Installation

About this manual

A guide for the perplexed

The File menu

The Edit menu

The View menu

The Markup menu

The Special menu

The Help menu

The Window menu

The configuration mechanism

Appendix 1: Keyboard shortcuts

Appendix 2: SGML conformance


Installation

Welcome to SoftQuad HoTMetaL PRO, a professional SGML editor especially for HTML files.

This distribution is for Microsoft Windows 3.1; it will not run without Microsoft Windows. You will need about 8 Megabytes of free disk space on your hard drive, and about 6 Megabytes of available RAM.. If you have less memory than this, you may be able to create a Windows swap file and continue, but your system will run much faster if you have more memory.

Please follow all the steps carefully. HoTMetaL PRO may not operate correctly if you miss a step, so save yourself some time and do it all the first time.

You may have received the software on diskettes or as a self-extracting archive file that you ftp'ed.

Installing from diskettes

Installing from a self-extracting archive

Getting ready to use HoTMetaL PRO


Installing from diskettes

Start the installation by inserting the floppy disk labeled SoftQuad HoTMetaL PRO Disk 1 into the appropriate floppy drive. In the procedure that follows, we will assume that you have the floppy in the A: drive, and that you are installing the software on the C: drive. If you are using different drives, then simply substitute the names of those drives for the names in the examples.

The software on this floppy disk has been stored in a compressed format to make it easier to ship. To extract the files (i.e., convert them back into a format that you can use and copy them to your hard disk) you will run a program called an installation script. To do this, follow these steps:

•    Start up Windows.

•    You may run the installation script in one of two ways.

–    Use the Run... command in the Windows Program Manager with the command line

  a:setup

(This assumes you have put the floppy disk in the A: drive; if not, substitute the drive name you're using in this command.)

–    Using the Windows File Manager, click on the file a:setup.exe

A dialog box appears, letting you choose where to install the software. The default location is the directory c:\hotmetal. You are given the opportunity to install the software in a different location.

–    If you want use an alternate location, type it in the text box labeled Copy to. Include the full path name, as well as the drive name.

–    Now click on the OK button to proceed with the installation. If, for some reason, you wish to cancel the installation, click on the Exit button.

The installation script will check that you have enough disk space. If there is not enough, it will return you to the dialog box where you may choose an alternate location for the software, or else cancel the installation and free up some disk space.

Another dialog box appears which allows you to monitor the progress of the installation. A horizontal bar in the dialog box will gradually increase in length to indicate the proportion of files that have been extracted. You will be prompted when you need to change the diskette.

If you already have a previous version of HoTMetaL PRO installed on your machine in the same directory in which the new version is being installed, you may wish to keep certain files intact. For certain files in the distribution, a dialog box will appear allowing you to install the new version of a file and create backup copies of the old file, or else leave the old file as it is without installing the new file. If this is the first time HoTMetaL PRO has been installed on this computer, these dialog boxes will not appear.

If you want to cancel the installation during the extraction procedure, you may click on the Exit button. If you attempt to do this, a dialog box will appear asking whether you still wish to cancel.

The installation will take approximately 5 minutes to complete.

•    Once the files have been extracted, a dialog box will appear asking you for the name of the Windows program group that will be created. By default, the installation program will create a program group called SoftQuad HoTMetaL PRO . If you wish to create a different group, enter the name in the text box provided. If a program group of that name already exists, it will be overwritten. You can run HoTMetaL PRO by clicking on an icon in this program group.


Installing from a self-extracting archive

If you ftp'ed the HoTMetaL PRO software, you have received a self-extracting archive file called hotmtpro.sqx. This means that the program that installs the software, and the software itself, are contained in the same file. Executing this file will install the software.

1. You will need to choose somewhere to install SoftQuad HoTMetaL PRO. A directory called hotmtpro will be created by the installation procedure, but you can put that directory anywhere you like. You will need approximately 8 Megabytes of disk space, in addition to whatever space is required by the hotmtpro.sqx file (which you can delete later). You can check available disk space with the dir command. We'll assume that you chose c:\hotmtpro, but you can put it anywhere.

2. Exit to DOS or bring up a DOS window.

3. Rename the distribution file from hotmtpro.sqx to hotmtpro.exe:

  c:> rename hotmtpro.sqx hotmtpro.exe

4. Now you can extract the software:

  c:> hotmtpro -d

Don't omit the -d option in this command: the installation will be unsuccessful if you don't use it.

5. This creates a directory called hotmtpro inside c:\, you end up with c:\hotmtpro. In this example, we assumed that the self-extracting archive file hotmtpro.exe was also located in the c:\ directory: you could have put it anywhere you had space (just prepend the drive and directory to the archive name when performing the extraction).

6. You must now set up a Windows program group and program item (or add a HoTMetaL PRO program item to an existing program group). To create a program group:

•    Invoke the New... command in the Program Manager's File menu.

•    A dialog box appears. Click on the Program Group radio button.

•    Click on the OK button.

•    A dialog box appears. Type `SoftQuad HoTMetaL PRO' or a description of your choice in the Description text box.

•    Click on the OK button.

This creates a window with the title you specified. To create a program item for HoTMetaL PRO:

•    The group window for the program group you just created should be the active window.

•    As before, invoke the New... command in the Program Manager's File menu.

•    Now click on the Program Item radio button.

•    Click on the OK button.

•    Type `SoftQuad HoTMetaL PRO' or a description of your choice in the Description text box.

•    Type the following command in the Command Line text box:

  c:\hotmtpro\sqhmpro.exe -sqdir c:\hotmtpro

•    Type `c:\hotmetal' in the Working Directory text box.

•    Click on the OK button.

The HoTMetaL PRO icon is added to the program group window.


Getting ready to use HoTMetaL PRO

These steps are optional.

If you want to associate HoTMetaL PRO with your HTML files (thereby allowing you to invoke HoTMetaL PRO by clicking on that file in the File Manager) do the following for each such file (which should have the `.htm' file extension):

•    In the Program Manager, click once on the file.

•    Invoke the Associate... command.

•    In the Associate With text box, enter the command:

  c:\hotmtpro\sqhmpro.exe

(Or click on Browse... and choose the program from a file chooser.)

•    Click on the OK manual.

•    Print The Manual (optional): If you want to print out the manual, it's in c:\hotmtpro\doc\hotmetal.ps, and you can send it to any PostScript printer (it is not in exactly the same format as the printed manual, and uses basic LaserWriter Plus fonts, such as Times Roman, however). The manual will use about 150 pages. The manual may also have been supplied in other formats.

•    Read The Manual (optional): You can do this later if you're impatient.

•    Run The Program: click on the HoTMetaL PRO icon.

•    Read The Manual(if you didn't do it before).


About this manual

This manual consists of:

1. The Installation chapter.

2. A guide for the perplexed, an overview and introduction to HoTMetaL PRO and HTML.

3. A chapter on each of the menus.

4. A chapter on the configuration mechanism.

5. Appendixes on keyboard shortcuts and SGML conformance.

Your suggestions


Your suggestions

SoftQuad welcomes your comments and suggestions on this documentation. These will be carefully considered for future versions of the HoTMetaL PRO manual. You may contact us at the following address:

  hotmetal-doc@sq.com


A guide for the perplexed

This chapter tells you how to start up HoTMetaL PRO and gives the basic information you need to get going with creating and editing files. If you are new to HoTMetaL PRO, HTML, or SGML, you should certainly read this section, as it will help you get acquainted with the product and learn about the components and procedures you'll need to get your work done.

Purpose

An overview of the menus

How to run HoTMetaL

Setting the HoTMetaL PRO directory

Creating and editing files

Text and markup

The configuration mechanism

Links

Attributes

Structure of HTML documents

Screen formatting

Tables


Purpose

HoTMetaL PRO is an editor for creating files that can be read by graphical browsers (such as Mosaic) that are connected to the World Wide Web (WWW). The file format for such files is called the Hypertext Markup Language (HTML). The HTML format is actually a type of file format based on the Standard Generalized Markup Language (SGML). All HTML files are SGML files (the converse is not true, however there are many other file formats described by SGML, so most SGML files are not in HTML format.)

If you have Mosaic, you can see what the HTML format looks like by invoking the View Source... command in Mosaic's File menu when you have an open document. HoTMetaL PRO provides an easy-to-use, graphical, structured editor for creating files in this format.


An overview of the menus

This section provides a summary of the main features. –    File menu: file manipulation, e.g., opening and closing files; filtering input files.

–    Edit menu: cutting and pasting; finding and replacing strings and patterns; spell checking.

–    View menu: screen formatting; displaying different views of the document.

–    Markup menu: inserting and changing markup; editing URLs; editing tables.

–    Special menu: checking document conformance; creating and running macros.

–    Help menu: on-line help; long/short menus.


How to run HoTMetaL
How to run HoTMetaL PRO

The usual way to run HoTMetaL PRO is by double-clicking on the icon labeled `HoTMetaL PRO' in the HoTMetaL PRO Program Group. If this group has not been created, you should create it, as explained below.

The icon must have a command line associated with it. You can check the command line associated with this icon by using the Properties...command in the Windows File menu. You can also change the HoTMetaL PRO command line by using the Properties... command. You can create a new program group using the New...command in the Windows File menu, then add HoTMetaL PRO to that group (also using the New... command). Alternatively, you could add HoTMetaL PRO to an existing program group. When adding HoTMetaL PRO to a group, associate it with a command line like

  c:\hotmtpro\sqhmpro.exe

as appropriate. An icon will be provided for you by HoTMetaL PRO.

Two other ways you can launch HoTMetaL PRO from within a Windows session are:

–    Using the File Manager, move to the directory where you installed HoTMetaL PRO. Now double-click on the file sqhm.exe

–    Use the Run... command in the Windows Program Manager with an explicit command line such as:

  c:\hotmtpro\sqhmpro.exe


Setting the HoTMetaL PROdirectory

The directory where HoTMetaL PRO is installed is referred to as the HoTMetaL PRO directory, or the SQDIR, throughout this documentation.

If you are running a copy of the HoTMetaL PRO executable file (sqhmpro.exe) that is not in the installation directory, it will not be able to find automatically the various auxiliary files and directories that it needs to run. In this situation you must inform HoTMetaL PRO of the location of the HoTMetaL PRO directory explicitly. There are two ways to do this:

–    Set the DOS environment variable called SQDIR to name the directory in which the software is installed. If the installation directory is c:\hotmetal, for example, SQDIR should be set (from the DOS prompt) as follows:

  set SQDIR=c:\hotmetal

This setting could be added to your autoexec.bat file so that it will be executed every time your machine is booted. In any case, it must be done before you start up Windows.

–    Specify the SQDIR on the HoTMetaL PRO command line.

•    Click once on the HoTMetaL PRO icon.

•    Invoke the Properties... command in the Windows File menu.

•    A dialog box will appear. In the Command line text box in this dialog, add the -sqdir option followed by the name of the HoTMetaL PRO directory. For example:

  d:\special\sqhmpro.exe -sqdir c:\hotmetal

If you set the HoTMetaL PRO directory using both methods, the value that you specify on the command line will take precedence. If you will be running more than one copy of HoTMetaL PRO, and will have a different HoTMetaL PRO directory for each, you should specify the directories on the command line.


Creating and editing files

This section gives the basic information needed to start editing files with HoTMetaL PRO.

Creating a new file

Editing an existing HTML file


Creating a new file

HoTMetaL PRO comes up with a new, empty HTML document ready for you to use. You can also create a new file as follows:

•    Click on the New... command in the File menu.

HoTMetaL PRO brings up a new, empty file.


Editing an existing HTML file

If you already have an HTML file that you want to edit:

•    Click on the Open... command in the File menu.

•    In the dialog box that appears, choose the file that you want to edit.

Once you've done this, HoTMetaL PRO opens the file and you can begin editing.

Some legacy HTML documents cannot be opened because of bad markup. See the section on the Open... command for information on strategies for dealing with this.


Text and markup

Like most electronic documents, an HTML file consists of text and markup. (Markup is special codes inside the file that indicate how part of the file is to be processed: for example, a word-processor file would contain markup indicating typographical features such as the font and font size for various parts of the document.) In an HTML file the markup consists primarily of elements. Elements normally consist of a start-tag that is placed at the beginning of a section of the text, and an end-tag that is placed at the end of that section of text. In HoTMetaL PRO, when you insert an element in the document, you are actually positioning its start- and end-tags. When you want words and phrases to be considered as distinct elements, you surround them with tags.

For example, a title in an HTML file would look like this:

  <title>This is a title!</title>

As you will see, when you are editing documents with HoTMetaL PRO, you don't have to deal with tags on this level: the start- and end-tags are represented on the screen by icons, and HoTMetaL PRO will insert both tags for you when you select a portion of the text to be surrounded by an element. (In fact, HoTMetaL PRO doesn't let you type tags literally if you type the `<' character, HoTMetaL PRO will replace it by a `character entity' icon that looks like this: lt.)

It is important to realize that HTML markup is not primarily intended to indicate how the document is formatted typographically, it is meant to describe the document's structure. The same file may look different when displayed with different browsers. When you are marking up a document in HTML format, you mark up parts of the document according to their function in the structure of the document. For example, there are different elements for headings, lists, list items, paragraphs, titles, and many other parts of a document's structure. One of the reasons for using HTML (and SGML) is that the files can be readily re-processed in a different format by other publishing, browsing, database, etc., applications.

In addition to describing the structure of a document, some elements also describe the links to other documents that can be accessed from an HTML document.

Because HTML documents are structured documents, the elements must be arranged according to specific rules: otherwise, the document is considered invalid. When you are using HoTMetaL PRO, you don't have to keep track of these rules yourself HoTMetaL PRO does it for you. One of HoTMetaL PRO's most important features is automatic rules checking, which ensures that you do not violate the required structure as you are creating a document. As well, when you open or save a document, HoTMetaL PRO checks that the markup is correct and complete.

Many HTML browsers have permitted a very loose, unstructured document format. Therefore, if you are editing existing HTML files, you may find that the structure that HoTMetaL PRO imposes on documents is somewhat constraining. If you need to, you can relax these constraints using the Turn Rules Checking Off command in HoTMetaL PRO's Special menu. Because there is an emerging trend toward browsers that require a stricter document structure, we believe that you will find it to your advantage to create all your new HTML documents with HoTMetaL PRO's default rules in force. It will also be worthwhile to modify existing documents to conform to these rules.

The document-structuring rules built in to HoTMetaL PRO are designed to be flexible while at the same time maintaining a useful document structure. If an existing `legacy' document (one that was not created with HoTMetaL PRO!) does not conform to these rules, HoTMetaL PRO's Open... command will give you the opportunity to pass the document through a filter that will attempt to adjust the markup so that the document can be opened. You also have the choice of opening the document as a text document and editing it by hand. Once the errors are fixed, you can use the Interpret Document command to do the equivalent of Open...on the text file.

Inserting markup

Inserting markup

Rules files


Inserting markup

The most common operations you will carry out in order to add or change markup are:

–    The Insert Element... command in the Markup menu inserts a new, empty element in which you can type text or insert other elements.

–     The Surround... command in the Markup menu lets you surround a selection with an element: if some part of the document should be contained in a particular element, then you can highlight that portion and select this command in order to choose an element to surround it with.

–    The Change... command in the Markup menu lets you change the markup: if you want to tag part of the document with a different element you can select this command to get a list of valid elements to replace the current element.

–    The Split command in the Markup menu lets you split the current element into two elements at the current insertion point or selection.

–    The Join to Preceding command in the Markup menu lets you join the current element with the element preceding it, provided both are of the same type.

–    The Remove Tags command in the Markup menu lets you remove the tag icons that delimit the current element, leaving the content intact.


Inserting markup
Special characters

Characters in the ISO 8859-1 character set that cannot always be inserted in the document directly from the keyboard can be inserted using the Insert Character Entity... command in the Markup menu. These characters will be represented by small rectangular icons. In addition to this, if you type the characters `<' or `&' (both of which are special characters in SGML files) they will be replaced by special character icons.


Rules files

The rules that determine how elements can be arranged in an HTML file are described by a set of declarations collectively known as a document type declaration, or DTD. HTML files are no exception to this. HoTMetaL PRO reads a DTD in a special, binary form called a rules file, which contains the same information as the DTD but in a different format, one that is more efficient for HoTMetaL PRO to read. It is not mandatory for you to know more details about DTDs and rules files. HoTMetaL PRO uses a rules file called html.mtl: this file is located in a directory called rules in the HoTMetaL PRO directory.

If you are interested in seeing the DTD for HTML files, look at the file html.dtd in the dtds directory underneath the HoTMetaL PRO directory.


The configuration mechanism

HoTMetaL PRO's configuration mechanism allows you to modify certain aspects of HoTMetaL PRO's behavior: find and save options, location of auxiliary files and directories, etc. HoTMetaL PRO reads parameters called configuration variables from two configuration files: these are the file sqhmpro.ini in the HoTMetaL PRO installation directory, and the file sqhmpro.ini in the Microsoft Windows directory (usually this is the c:\windows directory. Specific configuration variables are discussed in various locations throughout this manual. For full details, see the chapter The configuration mechanism.


Links

It is normal for HTML documents to contain links to other documents, which can be located anywhere on the WWW. These links are provided by Universal Resource Locators (URLs), which are identifiers that name the location and filename of a document, and the protocol used to access it. There are a number of elements available to you whose function is to contain URLs: one such element is called `A' (this name stands for Anchor). Rather than typing in the URL between the tags as text, you edit an attribute of the element: this is a piece of information attached to an element.

HoTMetaL PRO has three commands for working with URLs:

–    Publish... in the File menu is used if you want to change the URLs in the document from identifiers that refer to files on your local system to identifiers that refer to publicly-available files on one or more WWW servers.

–    Show Link and Context View in the View menu is used to display the URL(if there is one) in the current element.

–    Edit URLs... in the Markup menu provides a convenient editing mechanism for editing the URL (if there is one) in the current element.

More information on each of these commands may be found in the chapters on their respective menus.


Attributes

Elements can have content (text and sub-elements contained in the element) and attributes. An attribute is a piece of information about the element which does not appear in the content of the element. Some common uses for attributes are: to represent a link (URL); giving an element a unique ID so that it can be cross-referenced; naming an image file; setting formatting parameters (especially in tables).

Viewing attribute values

Editing attributes


Viewing attribute values

There are a number of ways of telling whether or not an element has attributes, and of seeing what the attribute values are.

–     If the current element has one or more attributes, then the Edit SGML Attributes... command in the Markup menu is activated (possibly the attributes have not been given values). If you invoke this command, you can see what the attribute values are and also edit the values.

–    Similarly, if the current element has an attribute that represents a URL, then the Edit URL... command in the Markup menu is activated.

–    The context view, which is displayed by invoking the Show Link and Context View command in the View menu, displays the sequence of elements that contain the current element. It also displays the attribute values for any elements in the sequence that have attributes.

–    One of the styles files supplied with HoTMetaL PRO allows you to display attribute values inline, as prefixes displayed just to the right of the start-tag icon.


Editing attributes

Attribute values may be inserted or changed using the Edit SGML Attributes... command in the Markup menu. When you invoke this command, you will get a dialog box that contains a line for each attribute of the current element. Each line contains the attribute name followed by either a text box or a pop-up menu, depending on what kind of value the rules file says the attribute must have. The attribute value may be text (which could be subject to restrictions such as the length of the text or first character in the text), or a selection from a list of values.

You should use Edit URL... to edit attributes that represent URLs.


Structure of HTML documents

The authoritative source of information on the structure of HTML documents is the document HyperText Markup Language (HTML) Version 2.0. This section provides a short summary of this material. The rules governing the HTML format are quite flexible, and furthermore HoTMetaL PRO will guide you through the document structure: therefore, the approach followed here will not be to enumerate all the possible combinations of elements. Rather, an overview of the structure will be presented, together with a discussion of the different groups of elements (emphasis, links, lists, etc.).

Overview

Typographical elements

List elements

Link elements

Forms

Other elements


Overview

–    An element called HTML surrounds the whole document.

–    This element contains two sub-elements, HEAD and BODY. These elements are required.

–    HEAD has sub-elements that define header material: –    TITLE document title. This element is required.

–    BASE used to record the document's URL.

–    ISINDEX indicates to the browser that the document is an index document.

–    LINK indicates a relationship between this document and some other object. (For example, it can be used to refer to a graphic image file that a browser may not be able to display in-line. See also IMG, below.)

–    META gives information that appears in HTTP headers.

–    NEXTID used to generate a unique identifier.

–     Inside the BODY element, heading elements (H1 through H6) can be used to delimit major divisions of the document (headings are not mandatory, however). Headings are permitted to appear in any order, but you will obtain the best results when your documents are displayed in a browser if you follow these guidelines: –    H1 should be used as the highest level of heading, H2 as the next highest, and so forth.

–    You should not skip header levels: e.g., an H3 should not appear after an H1, unless there is an H2 between them.

–    Almost any element can appear at any place within the body of a document. The major divisions of a document body's structure comprise the following elements: –    ADDRESS contains author information.

–    BLOCKQUOTE used for quotes from another source, requiring special block-style formatting.

–    P paragraphs.

–    PRE pre-formatted text.

–    DL, DIR, MENU, OL, UL list elements.

–    CODE code samples.


Typographical elements

The following elements are used primarily for typographical considerations such as emphasis and line breaks:

–    B bold.

–    BR forced line break.

–    EM usually italic.

–    HR horizontal rule (line).

–    I italic.

–    SAMP literal characters.

–    STRONG usually bold.

–    TT fixed-width typewriter font.


List elements

HTML supplies five list elements. With the exception of DL, list elements are composed of one or more LI (list item) elements.

–    DL list of definitions. Each item in this kind of list consists of one or more terms (DTs), followed by a definition (DD).

–    DIR directory list. Each LI element in this kind of list should be shorter than 20 characters.

–    MENU menu list. Each LI element in this kind of list should be shorter than one line.

–    OL ordered list. Items in this list are numbered automatically by the browser. The numbering will reflect nesting levels.

–    UL unordered list. Items in this list are prefaced by a list mark such as a bullet. Browsers will usually vary the list mark to take account of nesting.


Link elements

The following elements represent links to other documents:

–    A anchor. The HREF attribute of this element represents a URL. If this attribute has a value, the content of the element will be highlighted when the document is displayed in a browser window, and clicking on this content will cause the browser to attempt to open the file specified by the URL.

–    IMG image. This element represents a graphic image. It is typically used for inline images you should be aware that some browsers may not be able to display such images. (In this case, the text, if there is any, given in the ALT attribute may be shown.) The SRC attribute represents a URL. See the sections on the Show Image and Show Inline Image commands in the View menu for information on displaying images in HoTMetaL PRO.

–    See also the discussion of LINK, above.


Forms

The following elements are used to construct forms that the user can fill in and submit (e.g., via e-mail). When your document is browsed, the browser will generate the appropriate graphical widgets.

–    FORM the top-level element for a form.

–    INPUT an editable field.

–    SELECT represents a group of choices that a user can make.

–    OPTION one choice in a SELECT group.

–    TEXTAREA allows the user to enter several lines of text.


Other elements

The elements in this section do not fit into the categories described above.

–    CITE represents a document citation.

–    KBD used to display text that a user would enter at the keyboard. (This would be used in technical manuals, for example: it is not similar to an element such as INPUT, used in forms.)

–    VAR represents a variable name.


Screen formatting

HoTMetaL PRO provides screen-formatting capabilities that facilitate the document creation process by allowing you to assign distinctive styles to the elements in your document. This formatting is in effect only while you are editing the file in HoTMetaL PRO. Another application such a browser may (in fact, almost certainly will) format the document differently.

Because HTML files are structured documents, setting a style for an element means setting it for all elements of the same type.

The following kinds of typographical properties can be set:

–     Character-based properties: font family, font size, font style, line height, justification, fill mode, and format type. All of these properties are set using the Character... command. (Font style allows you to adjust the font by making it bold, superscript, etc.; the fill mode determines how carriage returns are treated in fill mode, they are treated like spaces, but in no fill mode they cause a line break; format type lets you choose whether an element appears inline or starts on a new line.)

–    Separation: using the Separation... command, you can set off elements by adding space on top and on bottom. This command also lets you cause an element to be formatted as if it started with a tab.

–    Color: if you are running HoTMetaL PRO on a color display, the Color... command will let you choose an element's foreground and background color.

–    Ruler: the Ruler... command lets you choose indents for element types. By choosing the right and left indent, you can effectively set the line length for an element. This command also lets you set tab stops, which specify how text that immediately follows a tab is positioned.

Styles

Displaying icons

Displaying a document outline

Images

Newlines


Styles

HoTMetaL PRO stores its formatting information in files called styles files: these contain the formatting information set with the Character..., Separation..., Color..., and Ruler...commands.

HoTMetaL PRO maintains two kinds of styles files. There is one default styles file, which is used whenever a file is created or opened with HoTMetaL PRO. This is a binary file called html.stl. When an HoTMetaL PRO file is created or opened, HoTMetaL PRO looks for this styles file in the styles path, that is, the set of directories named by the styles_path configuration variable. If it finds the styles file, then the formatting information contained in that file is used for the current HoTMetaL PRO file. If the styles file is not found, then a new styles file, containing the default formatting information, is created in the first directory in the styles path. Whenever the current HoTMetaL PRO document is saved, this styles file is updated with whatever formatting parameters are in effect for the document.

HoTMetaL PRO also uses styles files in text format. These styles file are loaded using the Load Styles... command. You can switch styles in the middle of a HoTMetaL PRO session by choosing a new text styles file with this command. The formatting information from a text styles file will not be written to the default (binary) style unless the current file is saved. Text styles files are created using the Save Styles... command. You can maintain as many text styles files as you wish.


Displaying icons

Using the Show/Hide Tags command in the View menu, you can cause the special character icons and the tag icons that represent elements to be visible or invisible.


Displaying a document outline

The command Show Structure View in the View menu displays a nested outline view of the document. You can cut, copy, paste, and navigate in this outline. For more information, see this command's documentation in the chapter The View Menu.


Images

The Show Image command in the View menu lets you launch an external application to display a graphical image. GIF images can also be displayed inline (in the HoTMetaL PRO document window).


Newlines

Although pressing the Return or Enter key will put a newline into the file, Mosaic and other browsers follow the SGML white space rules, and therefore will ignore new line characters in some circumstances.


Tables

Tables are not supported in HTML Level 2. However, recent versions of Mosaic do provide table support, and HoTMetaL PRO will allow you to enter tables into your HTML documents.

To enter a table, you must first insert a TABLE element. When you do so, a dialog box appears, allowing you to specify the number of rows and columns in the table. When you click on OK, a table is inserted in your document. This table is in graphical format: it looks like an ordinary table consisting of rows and columns, rather than being composed of tag icons like the other markup in the document.

The Markup menu contains four commands for changing the structure and format of tables:

–    Table Properties... and Cell-Row-Column Properties... let you change column and row widths, horizontal and vertical separators, justification, and alignment.

–    Edit Table... allows you to add and delete rows and columns.

–    Cell Spans... allows you to have table cells that span into the adjoining row and/or column.


The File menu

The File menu contains commands for creating, opening, closing, and saving files edited with HoTMetaL PRO, previewing the current document with a browser, and modifying URLs.

New...

Open...

Open Template...

Import Through Filter...

Save

Save As...

Close File

Preview

Publish...

Exit


New...

When you invoke this command a new, empty HoTMetaL PRO document is displayed in a document window.


Open...

Opens a previously saved file.

HoTMetaL PRO presents you with a dialog box allowing you to open a file. The dialog box is called a file selection dialog; a similar dialog box appears when you select the Save As... command. The structure and function of the file selection dialog box for the Open...command is explained here.

The dialog box has several parts:

–    A drop-down list box labeled List Files of Type. This list box lets you choose whether to display files with the default file extension ( .htm) or display all files in the current directory.

–    a text box labeled File Name This text box can contain a relative or absolute path name, which terminates in a file name or directory name, and can optionally start with a drive name. A file name (which may contain an extension) can contain the following wildcard (special) characters:

–    * (asterisk): matches any sequence of characters in a file name

–    ? (question mark): matches any single character in a file name

Such a pattern containing wildcard characters is used to filter the file names displayed in the list box directly below. You can type a pattern in the box directly or choose it from the List Files of Type list.

If the File Name box contains a path name that ends in a file name without wildcard characters, clicking on OK will cause that file to be opened.

–    an information field labeled Directories The current directory (including the drive name) appears underneath the label. The default directory is the one specified first by the import_path configuration variable.

–     a list box underneath the File Name text box This list contains the files in the current directory that match the pattern in the File Name box. The list of files is updated whenever a new directory is chosen, and when you click on the OK button.

Clicking once on a file in this list causes the name to go in the File Name box. Double-clicking causes the file to be opened. This has the same effect as clicking once on the file name and then clicking on the OK button.

–    a list box, on the right side of the dialog, underneath the Directories information field. This box allows you to navigate in the directory structure of a drive by double-clicking on the directories shown in the list. The top level directory displayed is the current drive; if you double-click on this directory, its subdirectories are displayed, slightly indented to indicate the nesting relationship. If you click on one of these directories, its subdirectories will be displayed, and so forth. At any particular time the list will display the sequence of directories that you have navigated along, ending with the subdirectories of the last directory you selected.

–    A drop-down list box labeled Drives. This allows you to choose which drive to navigate.

By pressing Tab or Shift-Tab you can make the File Name box, the list of directories, the list of files, or either of the buttons the active item in the dialog box. When either of the lists is active, you can select a list item by pressing repeatedly on the first letter of the item until it is selected. When the File Name box is active, you can enter text in it.

In summary: you may select a directory from which a file may be opened by using the list of directories, or by typing the path name in the File Name text box. You may choose a file by doing one of the following:

–    double-clicking in the list of files

–    selecting a file in the list of files and then clicking on OK

–    entering the file name in the File Name text box and clicking on OK

In this window, the default directory is the one specified first with the `import_path' configuration variable.

 Error checking

DOCTYPE declarations


Error checking

As the file is being opened, HoTMetaL PRO checks for fatal SGML errors. Fatal errors include start-tags without matching end-tags, invalid element names, and many other SGML errors. In such cases, HoTMetaL PRO displays a message describing the problem. It then gives you the following choices:

1. Invoke the Import Through Filter... command, which allows you to run the file through a filter that may correct the errors. See the section on this command for more information.

2. Open the file as a text file so that you can correct the errors manually. When you've done this, you can run the Interpret Document command, which performs the equivalent of Open.. on the text document.

3. Cancel the operation and correct the error(s) through other means.

If no errors are found, the file is formatted, checked once more for errors as if the Turn Rules Checking On command in the Special menu had been selected for the new file. At this stage, non-fatal errors may be detected. Examples of these are incorrectly placed elements, and text at a point where no text is permitted. Errors of this kind do not prevent the file from being opened.

Finally the file is validated: this stage of error checking ensures that the HTML markup is correct and complete. The following example illustrates the difference between rules checking and validation: if you open a file that has an HTML element that does not contain a FRONT element, rules checking will not complain, because you have not yet violated the rules file. Validation, however, will alert you to the fact that the required FRONT element is missing.


DOCTYPE declarations

There will sometimes be a document type declaration (DOCTYPE) at the top of an SGML file, specifying which rules file to use. This declaration is ignored with files being opened with HoTMetaL PRO, because all HTML files use the HTML rules file.


Open Template...

This command allows you to work with templates, which are pre-defined structures for documents. Templates are used as forms or document outlines that you can enter text into without having to insert any of the markup yourself.

Opening a template

Creating your own templates


Opening a template

To open a template, click on the Open Template... command. This brings up a file selection dialog box labeled Open Template. If you have a templates directory (see below) the dialog box will display the all files from that directory. Each file corresponds to a template: to open a template, just open it as you would any other file. The document name in the title bar will be the same as the template name, but with a number added to the first part of the filename: for example, the first time you open a template called fax.htm, the new document will be called fax1.htm, the second time the document will be called fax2.htm, and so forth.

When the template file is opened you can enter text or elements into it, and later save the file. When you save the file, you will have use the Save As... command and choose a new file name the name in the title bar is not automatically adopted. If you save this file in the templates directory, make sure you do not overwrite the original template file by mistake.


Creating your own templates

A number of templates are shipped with HoTMetaL PRO, but it is expected that you will normally be working with templates that were created at your own site.

Templates directory

In order to work with templates successfully, a directory must be designated as the templates directory. This is a central location containing all of your template files, and it is the directory whose files are displayed when the Open Templates... dialog box comes up. By default, this is the directory called tmplts in the directory where HoTMetaL PRO is installed.

If you want to use another directory for this purpose, you will have to name that directory using the templates_path configuration variable. For example:

  templates_path=c:\susan\tmplts

If the default templates directory does not exist (perhaps someone has removed it), and no alternative directory is specified with the templates_path variable, the current directory will be used as the templates directory.

Creating templates

To create a template file with HoTMetaL PRO, you should do the following:

•    Create a document as you normally would.

•    Invoke the Save As... command in the File menu.

•    Choose a directory and filename. You can save the file directly in the templates directory, or move it there later.

•    Click on the Save As button.

Installing a template

When the template file has been created, it should be saved in the templates directory (or you can save it elsewhere and move it later) so that it will be easily accessible from the Open Template dialog box.


Import Through Filter...

This command lets you pass an existing document through a filter before opening it with HoTMetaL PRO. You can supply filters for a variety of purposes, but one of the most frequent uses of this command is to massage a document which may not be properly marked up in the HTML format, and therefore not able to be opened by HoTMetaL PRO. For this purpose, a filter called tidy is supplied with HoTMetaL PRO. Another use for this command is when opening a document that is not yet in HTML format at all: you can pass it through a filter to convert it to HTML before opening it.

The Import Through Filter dialog box contains controls for choosing the filter, the input file that is to be passed through it, and the output file that will contain the result of running the input file through the filter.

You can enter a command line for the filter in the text box labeled Filter. Alternatively, you can choose a filter from the drop-down list box to the right of the text box. This contains a predefined list of filter commands. The commands in this list come from a file named by the filter_list configuration variable. For more information, see the chapter The configuration mechanism. (If you have purchased the HTML filters from Avalanche, this file would be a convenient place to list them.)

If the filter command contains the text `$FILE', the input filename you chose will be substituted for this when the command is run. Otherwise, the command will use the file as its standard input.

You can specify the file that you wish to pass through the filter by entering the name in the text box labeled File. You can also choose a file name by clicking on the Choose File... button and choosing the file from the file selection dialog box that appears. The filename you choose will then appear in the File text box.

When you've made your choices, click on the Import button. The file will be passed through the filter, and the resulting output sent to the output file entered in the Output File text field. HoTMetaL PRO will then attempt to open the output file.

The `tidy' filter


The `tidy' filter

One of the choices in the list of filters described above is a program called tidy. Our experience has indicated that this filter is able to convert approximately 90% of invalid documents into a form that can be opened by HoTMetaL PRO.

If you choose to use tidy as the filter, then the output of tidy will appear in c:\sqtidy.htm and errors, if any, will appear in c:\sqtidy.err. If c:\sqtidy.htm already exist, then HoTMetaL PRO will prompt you to either rename the file or permission to overwrite it.


Save

This command saves the current file (that is, the file that is opened in the active document window) to disk.

HoTMetaL PRO saves the document in the file name shown in the title bar at the top of the window.

Save options

If you have rules checking turned on, the file will be validated, and you will be warned if there are errors and asked if you still want to save. If you do, the file will be invalid and HoTMetaL PRO may have trouble opening it in the future.


Save options

There are several save options that you may set if you need to do so. All of these options are set using configuration variables:

–    You may choose to save a document type declaration (DOCTYPE), at the top of the file. The default may be set using the export_doc_type_decconfiguration variable.

–    You may choose to save an SGML declaration at the top of the file. The default may be set using the export_sgml_decconfiguration variable.

Normally you should use this feature only if your file will be used by some other SGML system. Some browsers may not be able to read an SGML declaration. Mosaic can read the declaration but will display a comment field from the declaration at the top of the browser window.

–    If your file contains special characters (those outside the ASCII range 0-127), you may choose to have these converted to SGML character references when the file is saved. This situation arises only if your file was edited with another editor. Special characters that are entered in the document when it is being edited with HoTMetaL PRO will be converted immediately to character entity icons. Character references are represented in a HoTMetaL PRO document as a small, rectangular icon, similar to a character entity icon, labelled `#nnn', where the n's are numbers. For example: #200. Mosaic will display a character reference as the character itself. The default setting for this option (ON or OFF) may be set with the export_convert_special_chars configuration variable.

–     You can choose the character(s) that HoTMetaL PRO uses to mark the end of a line in the saved file. You may choose one of the values MAC, UNIX, and MSDOS, which will cause the end-of-line character to be carriage return, line feed, or carriage return and line feed, respectively The default end-of-line marker can be set with the export_eol configuration variable. If you don't provide a value for this variable, the default will be UNIX.

–     For elements that are formatted in fill mode (see the documentation on the Characters... menu item) you can set the length of lines in the saved file by telling HoTMetaL PRO to insert end-of-line characters after a specified number of characters. This option can be turned on or off by default with the export_add_line_breaks configuration variable.. The number of characters in a line can be set with the export_max_line_len configuration variable. HoTMetaL PRO will not cause a line break in the saved file to occur between an element and adjoining text.


Save As...

This command lets you choose a new name for the current document. When you save a file with this command, HoTMetaL PRO creates a new file whose content is the same as the current file, and closes the current file, leaving the new file open.

The document that was closed will look the same as it did the last time it was saved: any changes that were made since the last save will be saved in the newly created file.

HoTMetaL PRO gives you the file selection dialog box with which to specify the name of the new file.

You should follow the same instructions for selecting a file or directory as were described in the section on the Open...command.

In this dialog box, the default directory is the one specified first by the `export_path' configuration variable. The save options that were specified for Save will also apply to the Save As... command. Save As.. will validate the file if rules checking is turned on, just as Save does.


Close File

This command closes the current file. If the file has had changes made to it since it was last saved, you will be prompted to save the changes before closing it.


Preview

When you invoke this command it will launch a browser to display the file. If the file hasn't been saved since changes were last made to it, HoTMetaL PRO will prompt you to save the file. You then have the choice of saving the file or proceeding with the previewing operation without saving (in which case the document is saved to a temporary file automatically). The command line for the browser that is launched by this command is specified using the html_browser configuration variable. The default value for this variable (and therefore the default browser) is c:\mosaic\mosaic.exe.


Publish...

Before a completed HTML document is moved to a WWW server, all URLs should refer to documents that are available on some WWW server. (While the document is being created, they may refer to documents on your local system.) The Publish... command gives you the opportunity to edit all the URLs, modifying them if necessary.

For example, when you are creating a document the URLs may consist of local filenames such as:

  file:///c|/rodney/orwell/homage.htm

When the document is placed on your server, you must substitute URLs that refer to documents that are available on your server or some other server. For example:

  http://sqrex.sq.com/sqmosaic/orwell/homage.htm

When you invoke Publish... you will get a dialog box containing two text boxes.

The first box (labeled Change URLs From) contains a part of the URL that you want to change; the second box (labeled To) contains the string that you want to change it to. The default values in these two boxes are specified by two configuration variables: publish_change_from specifies the part of the URL that should be changed; publish_change_to specifies the new value for this part of the URL.

If there were a large number of URLs for which you needed to change a local directory such as file:///c|/rodneyto a directory on the server, such as http://sqrex.sq.com/sqmosaic, you could set your configuration variables as follows:

  publish_change_from=file:///c|/rodney publish_change_to=http://sqrex.sq.com/sqmosaic

This would cause the Change URLs From text box to contain file:///c|/rodney and the To text box to contain http://sqrex.sq.com/sqmosaic.

Finding and Replacing URLs


Finding and Replacing URLs

When you click on the Find Next button, HoTMetaL PRO finds the next element that has an attribute representing a URL (often the HREF attribute of the element A and the SRC attribute of the element IMG). The search starts at the insertion point (or selection).

When an element with a URL is found, the insertion point is placed inside that element, and the document scrolls to its location.

If the URL contains the text in the Change URLs From box, clicking on the Replace button will change it to the text in the To box.

Clicking on the Replace All button will make this change for all URLs in the document that contain the Change URLs From text. This also causes the dialog box to be dismissed.

You can edit the Change URLs From and To text if you want to perform substitutions other than the default one.

The searching performed by this command does not wrap around from the bottom to the top of the file.


Exit

Quits HoTMetaL PRO. If an open file has been changed since the last time it was saved, you will be prompted to save the file before exiting.


The Edit menu

The Edit menu contains commands to do the basic editing: cut, copy, paste, or delete a selection, undo your last action, and perform find and replace operations.

Commands in this menu make extensive use of the clipboard. The clipboard is an area that holds parts of a document that have been cut or copied. It may contain markup. The clipboard may be used to transfer information between documents as well as within a document. Note that if markup is involved, it must comply with the rules file for the document into which the material is to be pasted.

Undo

Redo

Cut

Copy

Paste

Delete

Find and Replace...

Find Next

Check Spelling...

Edit Dictionary...

Thesaurus...


Undo

Allows the effect of the last operation to be undone.

Most commands can be undone. There are, however, some HoTMetaL PRO actions that cannot be undone:

–    any command from the File menu, except Publish

–    scrolling and windowing commands

–    text selection

–    Validate Document

–    Undo itself (it can be undone with Redo)

–    Show Structure View, Show Link and Context View

–    Edit Dictionary... and other operations that affect the user dictionary

–    Any actions performed prior to the last time the document was saved cannot be undone.

If you imagine a sequence of undo-able commands as a list, successive Undo commands will proceed through the list, starting at the most recent. Therefore, if you execute two Undo commands in a row you will undo the most recent action, and then undo the second most recent action. Note that since Undo is not itself an undo-able command, one Undo cannot undo another. This function is reserved for Redo, which is the inverse of Undo. (See the section on Redo.)

If you undo a Copy or Cut command, the previous contents of the clipboard will be restored.

Undo limit


Undo limit

The number of previous commands that can be undone is not limitless but rather is controlled by an undo limit. Once this limit is reached, each successive command will cause the oldest undoable command to be committed, that is, it will no longer be possible to undo that command. For example, if the undo limit is set to 1 and you Cut a selection and then Paste what you just cut, you will be able to undo the paste but not the cut. If the undo limit were 2 or greater, both the cut and paste could be undone. The default value for the undo limit is 10, but this can be changed by setting the undo_limit configuration variable.


Redo

This command allows the most recent undone command to be redone.

Redo operates in a way similar to Undo: a sequence of Redo commands re-does the most recent redo-able commands (i.e., commands that have been undone) in reverse order. Redo and Undo are inverses of each other: the net effect of an Undo and its corresponding Redo is to cause no change to the document.

If an undoable action is performed after a series of one or more Undo commands then the Undo commands will no longer be redo-able.

To illustrate how Redo works, suppose you Cut a selection in a document, and then Paste that selection somewhere else. If you perform two Undo commands, first the Paste and then the Cut will be undone. If you then execute a Redo, the Cut will be redone. A second Redo will then redo the Paste.


Cut

Removes the current selection from the document and places it in the clipboard. Any previous contents of the clipboard will be erased. The selection can then be pasted.

This command is used when you want to remove a section of text that will probably be pasted in elsewhere, in the same or another document. (Compare this command with Delete.)


Copy

Copies the contents of the current selection into the clipboard and erases any previous contents. The document is left unchanged.

This command is used when you want to duplicate a portion of the document without erasing it. The copied selection can be inserted elsewhere using the Paste command.


Paste

Transfers the contents of the clipboard to the document. If the document contains an insertion point, the clipboard is pasted at that point; if it contains a selection, then the contents of the clipboard overwrite the selection.

The clipboard can contain markup. If the paste would result in an incorrectly marked-up document, you may be prompted to either cancel the paste operation or continue with rules checking turned off. Some paste operations cannot be performed even with rules checking turned off.


Delete

Deletes the current selection from the document but does not transfer the selection to the clipboard. The clipboard remains unchanged. A selection that has been deleted cannot subsequently be pasted. (Compare this with the Cut command.)


Find and Replace...

Allows text, elements, and patterns to be found and replaced.

You are presented with a dialog box that allows you to enter various values and parameters.

Specifying the search and replace strings

Command buttons

Specifying search patterns as regular expressions

Regular expressions and special search characters

Elements and character entities as search patterns

Error messages

Other search options

Find In


Specifying the search and replace strings

The Find text box allows you to specify a search string of text characters, elements, character entities, or patterns. If the document contains a selection when you invoke Find and Replace...the selected text will automatically become the search string. If the selected text is longer than 255 characters, it will be truncated. If the selection contains a markup icon (an element or character entity) it will be truncated at the last character before the icon. A selection that starts with a markup icon will become a null search string, and therefore an existing selection cannot be used to cause an element to be the search string.

The Replace text box allows you to specify a replace string consisting of text characters, patterns, an element, or a character entity, with which you want to replace the search string.

The Find In text box allows you to restrict your search to a particular element.

The Find, Replace, and Find In strings are described in more detail below.


Command buttons

There are five buttons (including Cancel) along the bottom of the Find & Replace dialog box, which allow you to carry out several search and replace operations.

Find

Find causes HoTMetaL PRO to search through the document for the search string according to the various search parameters chosen. If you click on Find and the search is successful, HoTMetaL PRO selects the text, character entity, or element that was found and scrolls to the selection. If the search fails, HoTMetaL PRO will beep. Also, a Not found message will be displayed at the bottom of the Find & Replace dialog box.

Text searches will not match if parts of the search string are found within different elements. If you are searching for `Fred and Barney', but the word `and' is in a separate element (emphasized, for example), the search string will not be matched.

Replace

Replace replaces the current selection in the document with the replace string. This command is enabled only when part of the document is selected.

Replace then Find

Replace then Find replaces the current selection in the document with the replace string, and then resumes the search procedure. This command will be enabled only when part of the document is selected.

You would use this option if you wanted to manually examine each occurrence of the search string before doing a replacement: if you decide to perform the replacement, click on Replace then Find again; otherwise, click on Find to go to the next occurrence of the search string.

Replace All

Replace All replaces all occurrences of the search string with the replace string. This command automates the whole find and replace process, not giving you the opportunity to choose individual cases. It is possible that some of the occurrences of the search string that are found cannot be replaced, because this would cause an incorrectly marked-up document. If so, these occurrences are skipped over. After the operation has been completed, a message will be displayed in the Find & Replace dialog box showing how many occurrences of the search string were found, and how many were replaced. The insertion point will now be at the end of the last replacement. Invoking the Undo command after Replace All will cause all of the replacements that were actually made to be undone.


Specifying search patterns as regular expressions

When the Find Patterns option is on (see below), the characters you type in the Find text box are interpreted as patterns by HoTMetaL PRO: that is, the search string can contain certain special search characters that allow the search string to match a class of strings, or markup constructs. If your search string does not contain any special search characters, HoTMetaL PRO will search for exactly the text you have typed. On the other hand, if the search string does contain special search characters, it is interpreted as a regular expression that defines a pattern of characters to be matched. For example, the special search character `.' (period) is used in the pattern

  m...y

to match a sequence of five characters beginning with `m' and ending with `y', e.g., the words `money', `marry', `murky', etc. A complete description of HoTMetaL PRO regular expressions and special search characters appears below. A table at the end of the section provides a summary.


Regular expressions and special search characters

The following characters are special search characters in a search pattern:

  \ . * ? + ^ $ [ ]

In addition, the characters `&' and `<' are special when one or the other appears as the first character of the pattern.

If you want to search for any of these as ordinary characters when Find Patterns is turned on, it must be preceded by a backslash. For example,

  \.

is used to match a period.

Regular expressions are sequences of ordinary characters and special characters, combined according to certain rules.

The following list summarizes how these special search characters are interpreted, and how regular expressions are formed.

–    An ordinary character represents itself.

–    A string beginning with a `<', immediately followed by an element name (and possibly attributes and content, as discussed below), is used to match an element .

–    A string beginning with `&', immediately followed by a name, matches a character entity (see Insert Character Entity... in the Markup menu).

–    A period or dot, `.', represents a single, arbitrary character (including a blank). So

  fo.d

would match `food', `ford', `fond', `fold', etc. Similarly,

  s.o.

matches `stop', `shot', `snow', etc.

–    A single character, or a string enclosed in parentheses, followed by an asterisk, `*', matches zero or more occurrences of that character or string. For example,

  l*ama

would match `ama', `lama', `llama', `lllama', etc.

  b(an)*a

would match `ba', `bana', `banana', and so on. It is possible to combine the `*' with `.' to match arbitrary strings of characters. So

  s.*ch

matches `search', `such', `stretch', `stopwatch', as well as `sch' and `skip lunch'. The search pattern represents strings that start with `s' followed by zero or more occurrences of an arbitrary single character (it doesn't have to be the same character over and over) followed by the characters `ch'. Since the period can match a blank space, this pattern can match a multi-word string.

–    A single character, or a string enclosed in parentheses, followed by a question mark, `?', matches zero or one occurrences of that character or string. For example, to search for instances of both `color' and `colour', you would use:

  colou?r

–    A single character, or a string enclosed in parentheses, followed by a plus sign, `+', matches one or more occurrences of that character or string. For example, the following expression matches `ben', `been', `beeen', and so forth, but not `bn'.

  be+n

–    Regular expressions may be enclosed within parentheses for grouping.

–    Two regular expressions separated by a vertical bar, `|', match any string that matches either of the regular expressions. For example, if you wanted to search for either `love' or `money', you would use the expression:

  love|money

In a more complex example, you could combine two regular expressions given above:

  s.*ch|fo.d

–     A caret, `^', at the very beginning of a search pattern means that text will match the pattern only if it immediately follows markup (a start- or end-tag, or a character entity). Such text must not be separated from the markup by white space. Anywhere else, the caret is not treated as a special search character (except in sub-strings, see below). For example, if you wanted to search for the word `Note' immediately following markup, you could use:

  ^Note

–    A dollar sign, `$', at the very end of a search pattern means that text will match the pattern only if it is immediately followed by markup. Such text must not be separated from the markup by white space. Anywhere else, the dollar sign is not treated as a special search character. For example, if you wanted to search for the word `sub' immediately preceding markup, you could use:

  sub$

–    A pair of square brackets, `[' and `]', around any string of characters defines a sub-string that matches any one of the characters between the brackets. For example,

  an[dy]

matches `and' and `any'.

By contrast, a string of characters preceded by a caret, `^', within brackets, matches any character not in the string. For example,

  th[^ei][a-z]*

matches any word that begins with `th', which is not followed by an `e' or `i'. It would match `that' and `thought' but not `therefore' or `this'.

–    A sub-string, within square brackets, of the form

  [char1-char2]

matches any character in the range of ASCII characters beginning at char1 and ending at char2. For example, the sub-string

  [e-p]

matches any lowercase letter between `e' and `p', inclusive. The substring

  [A-Za-z]

matches any upper- or lower-case letter. Note that if searching is not in case-sensitive mode (see below), no distinction between lower case and upper case letters is made in character ranges. In this case, for example, the character range

  [a-z]

would match any upper- or lower-case letter.

–    An expression of the form

  [^char1-char2]

matches any character not in the range of ASCII characters beginning at char1 and ending at char2.

–    A range can occur inside a sub-string. For example, the pattern:

  [ac-fh]

matches any of `a', `c' through `f', and `h'.

–    If you wish to use any of the characters `^', `]', or `-' as a regular character within a sub-string rather than as a special search character, there are certain rules you must follow.

–    The `^' character is special only if it occurs as the first character in a sub-string. Otherwise, it's treated as a regular character. E.g.,

  [joy^]

will match any of the characters `j', `o', `y', and `^'.

–    The character `-' is a special search character if it occurs between other characters in the sub-string. If it occurs at the beginning or end of the sub-string, it is a regular character. For example, the sub-string

  [a-]

will match `a' or `-'.

–    The character ']' terminates a sub-string unless it occurs as the first character. For example,

  []ab]

will match `a' or `b' or `]'. But

  [ab]]

matches `a' or `b' followed by `]'.

None of the otherwise special search characters, including `\' and `[' has special meaning within a sub-string.

–    If you surround a sub-expression in the search string by parentheses, `(' and `)', you can refer in the replace string to whatever this sub-expression matches. In general, an expression in the replace string of the form `\n', where n is a number from 1 to 9, means replace this expression with whatever the n-th expression in brackets in the search string has matched. For example, if the search string is

  (.*)read

and the replace string is

  \1ox

then if the search string matches `bread', the found text will be replaced by `box'. This is because the sub-expression `(.*)' matched the letter `b'; the expression `\1' in the replace string means replace this expression with whatever is matched by the first expression in parentheses in the search string. Therefore `b' is substituted for `\1' and the replace string becomes `box. Here is a more complicated example: suppose the search string is

  (v.*e) (v.*a)

and the replace string is

  \2 \1

Now the search string may match the words `vice versa'. The first sub-expression, `(v.*e)', matches `vice' and the second sub-expression, `(v.*a)', matches `versa'. In the replace string, HoTMetaL PRO replaces `\2' by what the second sub-expression in the search string matched, and replaces `\1' by what the first sub-expression matched. Therefore the replace string becomes `versa vice'. The net effect of the operation is to replace an occurrence of `vice versa' with `versa vice'.

It is possible to nest sub-expressions. In this situation, the sub-expressions are numbered according to the order of occurrence of their left parentheses. For example, if the search string were

  (a(bc)d)

and the replace string

  \2 \1

the effect would be to find `abcd' and replace it by `bc abcd'.

The expression `\0' in a replace string refers to the entire string that was matched by the search string. E.g., if the search string were

  fish

and the replace string were

  gone \0ing

then an occurrence of `fish' would be replaced by `gone fishing'.


Elements and character entities as search patterns

A search string that begins with an open angle bracket, `<', followed by a valid element name matches an element of that name. If the search succeeds, the insertion point is positioned to the left of the start tag. It does not matter here or in other search options whether tags are visible or not (see Show/Hide Tags in the View menu). The name in the search string can optionally be followed by a closing angle bracket (>).

For example,

  <META

matches the element that has the name META. Element names are not case sensitive in HoTMetaL PRO, so `<meta' and `<META' would match the same elements.

In a replacement operation, if the search string and the replace string are both elements, one or more occurrences of the element in the search string will be changed to the type specified in the replace string. The contents of the element will be unchanged. The tag in the replace string cannot be followed by text; if it is, an error message will be displayed and the operation will not be performed.

If only the replace string is an element, the text that is found will be removed and replaced. Replacement will not occur unless the document contains a selection.

Attributes

It is possible to restrict the search to an element with specific attribute values. This is done in the search string by following the element name with a space-separated list consisting of attributes names followed by an equal sign, `=', followed by a regular expression contained in double quotes ( ). The regular expressions are the same as those used to match text and are used here to match the attribute's value. For example,

  <meta name="Expires" id=".*[012]"

would only search for those META elements that had a NAME attribute with value `Expires' and an ID attribute ending in a 0, 1, or 2.

You may specify as many attributes as you wish, and in any order.

Attribute values of an element may be replaced by specifying the replacement values in the replace string. Specify replacement attributes in the same way as you would specify attributes in a search string.

Searching for text within an element

The search string can contain both an element name and, following it, some text (or a pattern) that must be matched within the element. In this case the element must end with a closing angle bracket. For example,

  <P>The

would match the word `The' anywhere within the element P. This is similar to the kind of restrictive searching that can be done using the Find In string but it can be used in conjunction with that feature to further restrict the search. In the last example, if the Find In string is set to:

  <OL

the word `The' would be matched if it appeared in a paragraph in a ordered list but not if it appeared in a paragraph in another context.

Character entities

The search and replace strings may be character entities. Therefore the replacement commands can be used to replace an occurrence of an element, character entity, or text with another element or entity, or text.

A search string that begins with an ampersand, `&', followed by a valid character name matches a reference to a character entity of that name. (The name in the search string can optionally be followed by a closing semi-colon, `;'.) For example,

  &lt

matches a character entity called lt. If the replace string consists of a character entity, a character icon will be inserted into the document.


Error messages

If you have a badly-formed search or replace string, HoTMetaL PRO will inform you of this with an error message at the bottom of the Find & Replace dialog box. This message will consist of a description of the error and the character position in the string at which the error occurred. Errors that will be reported include: invalid element or character entity names; unmatched parentheses and brackets in regular expressions; `?', `*', or `+' not preceded by any character; invalid character ranges.

For example, if you use the search pattern:

  <QUAGMIRE

you will get the error message:

  In Find string: Invalid element name at position 2

because the HTML files do not contain an element called QUAGMIRE. This message also indicates that the error was detected at the second character in the search string.


Other search options

There are five options that can be set in searches. You may want to search forward or backward through the file, match only whole words, match upper- and lower-case exactly, employ wrapping, or perform pattern searching. These options can be used in combination and are turned on or off by clicking in the five check boxes in the Find & Replace dialog box. The defaults for these options can be set with the appropriate configuration variable. In this case, the boxes will be selected, or not, according to the configuration setting. Values set with configuration variables may be overridden during your editing session by clicking in the check boxes in the dialog box.

Whole Words

A search string may be part of a word or it may represent an entire word. Turning on Whole Words means that the search will match a sequence of one or more whole words only. For example, if HoTMetaL PRO were told to look for `red' with Whole Words turned on, it would not find that string in `Fred'.

With this option turned on, the pattern `a.*z' will match `a tough quiz' but not the first 12 characters (including the spaces) of a `tough buzzard'. The default for this option can be set with the find_whole_words configuration variable.

Case Sensitive

When case sensitivity is turned on, HoTMetaL PRO will look for the search string exactly as you've typed it matching upper case to upper case and lower to lower. With case sensitivity off, the program will find any variation: a search string of `alice' would match `ALICE', `alice' and `AliCE'. This option applies to patterns as well as text. The default for this option can be set with the find_case_sensitive configuration variable.

Backwards Search

HoTMetaL PRO normally starts its searches at the insertion point(or the end of the selection) and moves towards the bottom of the file. Backwards Search indicates that you want the search to move from the insertion point (or the start of the selection) back to the top of the file. If wrapping is not enabled (see below), HoTMetaL PRO does not wrap around the beginning or end of the file, so you should always make sure that you begin your search from the appropriate place in the file. The default for this option can be set with the find_backward configuration variable.

Wrap

When Wrap is turned on, HoTMetaL PRO will wrap around the top or bottom of the file, depending on whether you are doing a forward or backward search. The default for this option can be set with the find_wrap configuration variable.

Find Patterns

This option allows you to turn on or off HoTMetaL PRO's ability to find patterns. If Find Patterns is turned off, any special characters that you type in the find or replace strings will be treated as ordinary characters. The default for this option can be set with the find_patterns configuration variable.


Find In

One of HoTMetaL PRO's more powerful search features is its ability to restrict a search to the contents of particular type of element. This means, for example, that you could use Find and Replace... to check that a word is in uppercase letters whenever it appears in a paragraph, but in upper and lowercase when it's part of a title.

The Find In text box is used to specify the element that you want to restrict searching to. The format for this string is identical to that for the search string when searching for an element, except that the element name can't be followed by text. Attribute values may also be specified in the Find In string you may use a Find In string such as:

  <li label="Donkeys"


Find Next

Performs a search for the search string specified in the previous Find & Replace dialog box. Once a search string has been specified, this command has the same effect as clicking the Find button in the Find & Replace dialog box.


Check Spelling...

This menu item allows you to spell-check all or part of the text of your document.

Dictionaries

Using the spell checker

Restricting spell checking


Dictionaries

HoTMetaL PRO's spell-checking employs up to three different kinds of dictionaries.

–    The system dictionary is a dictionary that is shipped with HoTMetaL PRO. The location of this dictionary is specified by the system_dict_path configuration variable. System dictionaries for a number of languages are available for HoTMetaL PRO. You can specify the language you want using the spell_checking_language configuration variable. System dictionaries cannot be edited.

–    The user may develop one or more personal user dictionaries. (See the Edit Dictionary... section.) Only one user dictionary may be loaded at a time, but you may switch dictionaries in mid-session. The search path used when loading dictionaries is specified by the user_dict_path configuration variable. The default filename of the user dictionary is specified with the user_dict configuration variable. Words can be added to or deleted from a dictionary during an editing session.

–    You can specify as many as 24 supplementary dictionaries, which are generally lexicons of specialized terminology for a specific field such as medicine or law. It is possible for you to create and edit your own supplementary dictionaries using the Edit Dictionary... command, but usually they will be supplied by a third party. The search path for supplementary dictionaries is specified by the supp_dict_path configuration variable. The specific supplementary dictionary files to be loaded are named with the supp_dict configuration variable.

All dictionaries are binary files and cannot be modified with a text editor.


Using the spell checker

When you select Check Spelling..., HoTMetaL PRO starts spell-checking your document, using the system dictionary, supplementary dictionaries, and the user dictionary. The check starts at the insertion point and continues through the document, wrapping around to the top when the end of the document has been reached. If a word is found that has no entry in any of the dictionaries, a dialog box appears: the word is displayed at the bottom of the dialog box next to the label Misspelled Word and is also highlighted in the main window.

The scroll list contained in the dialog box will present a number of possible substitutions: this list includes words whose spelling or pronunciation is close to the unrecognized word. The words are listed in decreasing order of probability that they are the correct substitution.

Correcting a misspelled word

If one of the words in the list is the correct substitute for the misspelled word, you may click on that word. The word you clicked on is then put in the text box labeled Replace with. You may also type the replacement word in the text box directly. This text box initially contains the unrecognized word. When the text box contains the desired substitution, click on the Replace button to make the change in the document.

Leaving a word as-is

If the unrecognized word is a word that you consider spelled correctly (perhaps it is a jargon word, a proprietary name, etc.) then you have several options.

–    If you expect this word to appear again in this document or in other documents, you may add it to the user dictionary by clicking on the Add to Dictionary button. If there is no current user dictionary you will be presented with a Load Dictionary dialog. Use this dialog as described in the section on the Edit Dictionary... menu item. After you load the dictionary, you will have to click on Add to Dictionary again to add the unrecognized word to the user dictionary.

Changes to the user dictionary will be saved automatically when you quit HoTMetaL PRO or save the current file.

–     If you want the unrecognized word to be ignored by Check Spelling... only for the duration of this HoTMetaL PRO session, click on the Ignore button. This causes the word to be put into a temporary list of correctly spelled words, and subsequent occurrences will be ignored. The next time HoTMetaL PRO is invoked with the same dictionaries, this word will again be flagged as an unrecognized word.

–    If you do not want to take any special action, click on the Next button. This causes the search to resume; if the word occurs again in the document, it will again be flagged as unrecognized.

When no more misspelled words are found, HoTMetaL PRO displays a note box informing you of this.


Restricting spell checking

From within the Check Spelling dialog box it is possible to restrict spell checking to a selection in your document. This must be done in two steps. The first step is to define the restricted search area. Start by highlighting the portion of the document that you wish to restrict spell checking to. (This can be done from the structure view if you wish to select a large part of the document.) Then click on the Set Restriction button. This causes the restricted search area to be defined. Even if you later highlight some other part of the document, HoTMetaL PRO will still know where the restricted area is. This process does not actually enable restricted spell checking. To do this, you must then click in the check box labeled Restrict. If it is checked, restricted spell checking is enabled.


Edit Dictionary...

This command allows you to create and update a user dictionary or supplementary dictionary for use with the Check Spelling... command. It may also be used to load a user dictionary or switch dictionaries during an edit session.

If a user dictionary is already loaded when you invoke this command, HoTMetaL PRO brings up the Edit Dictionary dialog box. This dialog contains a list of words in the current user dictionary. To add a word to the dictionary, enter the word in the text box labeled Word and click on the Add Word button. To delete a word from the dictionary, click on that word in the list and then click on the Delete Word button.

If you select this command and no user dictionary is currently loaded, HoTMetaL PRO gives you the Load Dictionary dialog, which is a file selection dialog similar to the one invoked by the New... command. In this dialog box you can search for and load an existing user dictionary.

The default directory is the one listed first with the `user_dict_path' configuration variable. The default file extension for a dictionary file to be loaded is specified with the `dictionary_ext' configuration variable. You can also create a new, empty, dictionary by typing a new dictionary name in the File Name text box. When the name of the dictionary you want to load or create is in the text box, click on the Load Dictionary button.

The Edit Dictionary dialog contains a Load Dictionary button, which will take you back to the Load Dictionary dialog, allowing you to load a new dictionary. (Remember that you can have only one user dictionary open at a time, so if you load a new dictionary, the one currently open will be saved in its current state and closed automatically.)


Thesaurus...

This command lets you consult an on-line thesaurus.

The document must contain a selected word when you invoke the command. The selection will be displayed at the top of the Thesaurus dialog box; if the selection is a word in the thesaurus, then the number of meanings for that word that the thesaurus contains will be indicated, and the first meaning displayed. The buttons Next Meaning and Previous Meaning can be used to display the different meanings. If the thesaurus does not contain the selected word, the dialog box will give a message indicating this.

The dialog box contains a menu that is used to display lists of words that are somehow related to the selected word (with the meaning you have chosen). The choices are:

–    Synonym gives words that have the same or almost the same meaning as the current selection

–    Antonym gives words that have the opposite or almost the opposite meaning to the current selection

–    Related gives words whose meanings are similar to the current selection, but not as close as synonyms

–    Contrasted gives words that oppose the current selection, though not as directly as antonyms

–    See Also gives words that describe ideas related to the current selection

If you want to replace the current selection with a word from one of these lists, click on the word from the list and then click on the Replace button. Alternately, you can type a word directly into the text box labeled Replace with and then click on the Replace button. Any word that you select from one of the lists is immediately inserted in this text box.

If you wish to invoke the thesaurus with a new word from the document, highlight the desired word and click on the Get Word button.

It is not possible to edit the thesaurus.


The View menu

The View menu contains various commands to format the document window when editing an HoTMetaL PRO document.

Numerical parameters

Show/Hide Tags

Show/Hide Link and Context View

Hide Structure View

Show Image

Show/Hide Inline Images

Character...

Separation...

Color...

Ruler...

Save Styles...

Load Styles...


Numerical parameters

The Character..., Separation..., and Ruler... commands allow you to set numerical parameters. These may be set from a menu or entered directly by the user in a text box. As appropriate, these values may be absolute, relative, or expressed as a percentage of some base value (this is explained below). The following units may be used:

–    centimeters (cm)

–    inches

–    machine units

–    millimeters (mm)

–    picas

–    pixels

–    points

A pixel is the same as a point, and a machine unit is 1/16 of a pixel.

You may use any unit wherever you are allowed to enter values. For example, point size may be expressed in points, inches, picas, etc. Descriptions of individual commands will indicate which kinds of values (absolute, relative, percentage) may be used.

Units may be specified by giving the full unit name, the abbreviation (mm or cm), or the first few letters of the unit name, as long as that specification is unambiguous.

Examples

Relative and percentage settings


Examples

The following are examples of valid settings:

–    1 inches

–    1.45 i

–    2 mm

–    2 milli

–    3 pix

–    6 points

–    2 po

–    2 pica

–    2 pica


Relative and percentage settings

Relative settings specify an amount to be added to or subtracted from a base setting: they have the same format as absolute settings, but are prefaced by a `+' or `-' sign. As well, you may set a value to be Adopt Current, which means that the value is to be inherited from the surrounding element. Some valid settings are: –    -2.67 inches

–    +3 picas

–    Adopt Current

–    ac (same as Adopt Current)

–    +0 (same as Adopt Current)

Values may also be expressed as a percentage by affixing a percent (%) sign, the word `percent', or a suitable abbreviation e.g.: –     100% (same as the default value)

–    150% (1.5 times the default value)

–    243 per (2.43 times the default value)


Show/Hide Tags

If you select Show Tags, the start- and end-tags in your document will appear on the screen as small tag icons, and character entities will be represented as rectangular icons containing the character name; if you select Hide Tags, the tag icons will be hidden, and the character entities will appear in text form. This command is toggled: if you choose Show Tags, the menu item changes to Hide Tags, and vice versa. The tags that point to the right are start-tags, indicating the beginning of an element, while those that point to the left are end-tags, indicating the end of an element. When you create a new HoTMetaL PRO document, tags will be visible by default.


Show/Hide Link and Context View

This feature allows you to display a window showing the sequence of nested elements that terminates at the current insertion point or selection.

This window will not show the structure of the entire document (see Show Structure View below) only the hierarchical context containing the current position. That is, it displays the sequence of open tags at the current position. Any attributes that have been set for elements in the sequence will be displayed.

The Context View: an attribute is displayed for the fourth element in the sequence. When you invoke this command the name toggles to Hide Link and Context View; this command should be used to dismiss the context view.

You can bring up a different context view for each open HoTMetaL PRO document.


Hide Structure View
Show/Hide Structure View

This command brings up a window that shows the structure of the entire document.

You can bring up a different structure view for each open HoTMetaL PRO document. Once a structure view is displayed, it remains visible, even if you change documents, until it is dismissed.

The structure view shows the hierarchy of the document in a plain, unformatted manner. Each line in the structure view represents one element in the document. Each line shows a start tag, an end tag and possibly some text between them. The indention of the line indicates the level at which the element is nested. The text cannot be edited and typing is not recognized, but you can use all the editing commands from the Edit and Markup menus.

To select an element in the structure view, you can either click to the left of the start tag icon and drag the cursor across the icon, or click twice to the left of the start tag icon. Multiple elements can be selected by clicking the mouse to the left of a start tag and then dragging down to select successive elements.

When you invoke this command the name toggles to Hide Structure View; this command should be used to dismiss the structure view.

Editing in the structure view

Expanding the view of elements


Editing in the structure view

Since text entry is not permitted in the structure view, almost all editing is done in the formatted view. The structure view is useful when rearranging whole elements or when creating an outline for your document. It can also be very useful when you are changing styles, for example, with the Character... command.

You may insert, remove, split, etc., elements while in the structure view. Any of the valid commands that you select will apply to the contents of the structure view.

Any editing you do in the structure view will appear in the formatted view provided it is displaying the same portion of the document.


Expanding the view of elements

Clicking on an element icon allows you to open and close elements, that is, show and hide their contents. When an element is open, all the elements it contains (but not their sub-elements) are shown as indented lines following that element's line. (To see the contents of sub-elements, open these in turn.) When an element is closed, access to its contents is not possible because the contents are not displayed in the window. Since you can insert elements in the structure view, you can use this feature to build an outline (structure) for your document before you begin to type in the text.


Show Image

This command allows you to display a file (usually a bitmapped graphic file) referred to by a URL in the current element (which must be one of IMG and LINK). To view a file, invoke this command when the insertion point or selection is inside the desired element.

Show Image uses the following mechanism to determine how to process the file in this explanation, assume that the URL is:

  file:///c|/rodney/orwell/george.gif

1. HoTMetaL PRO reads the filename (the last part of the URL). In this case it's george.gif

2. HoTMetaL PRO reads the file extension (the part after the dot). In this example the extension is gif. This extension should indicate the format of the file: we would expect this file to be in GIF format.

3. HoTMetaL PRO scans the defined configuration variables, looking for one called view_extension, where extension is the file extension read in the previous step. In this case, it would look for a variable called view_gif. The value of this variable (if it's defined) should be a command that processes the file, for example:

  view_gif=c:\windows\pbrush.exe $FILE

If this variable is not found, Show Image terminates with an error message.

4. If the variable is found, the full filename specified in the URL (including the path, if specified) is substituted for the string `$FILE', and the resulting command line will be executed on your system. (If `$FILE' is not present in the command, the full filename is simply appended to the command.) In this example, the resulting command line would be:

  c:\windows\pbrush.exe c:\rodney\orwell\george.gif

(This invokes the Windows Paintbrush program.)

If you intend to use Show Image, you should ensure that the necessary configuration variables (view_gif, view_tif, view_jpg, etc.) are defined before you invoke HoTMetaL PRO, and any programs that these variables refer to are available on your system (in particular, ensure that they are in your executables path unless you use a full path in the command name).

Since Show Image uses only the filename part of a URL, the URL can specify a file on any server, provided that a file of the same name exists on your local system.


Show/Hide Inline Images

If you invoke Show Inline Images, all GIF files referred to by URLs of the elements IMG and LINK in the current document will be displayed inline (i.e., in the HoTMetaL PRO document window). The menu item will toggle to Hide Inline Images. Invoking Hide Inline Images will cause all such images to be hidden.

If the show_inline_images configuration variable is set to TRUE, GIF images will be displayed when a file is opened, and this menu item will be toggled to Hide Inline Images. Otherwise (if show_inline_images is FALSE, or not set at all), GIF images will not be displayed when a file is opened, and the menu item will be toggled to Show Inline Images.


Character...

This item allows you to change character-related formatting properties such as font, font size, and justification.

You can change the format assigned to an element in the document at any time. When you invoke the Character... command, HoTMetaL PRO gives you a dialog box allowing you to set formatting parameters for the current element (the one the insertion point or selection is in). When you change these parameters, they will change for all occurrences of the current element type. If the insertion point is not inside any element, HoTMetaL PRO gives you a dialog box to set the default format. If you move the cursor to a different element while the Characters dialog box is on the screen, the dialog box changes to reflect the formatting of the new element.

The name of the element currently being formatted appears in the lower left corner of the dialog box.

Font Family

Font Size

Font Style

Line Height

Justification

Fill

Format Types


Font Family

The drop-down list box for Font Family shows the current choice. You can specify the font family by name or adopt the font of a surrounding element. To select a new font family, position the cursor on the Font Family arrow. Click and drag down the list of the font family names available on your system. Release the mouse button over your choice.

The default font family can be specified with the default_font_family configuration variable. A font family specified in this manner will be the default for all open documents. The built-in default font family is Helvetica.

Adopt Current

Sometimes you may want to change the font family you're using on the screen for many related elements. Changing the Font Family for every element would be time-consuming and tedious. You can allow changes to be inherited by taking advantage of HoTMetaL PRO's ability to pass format settings from one element to the next.

For example, if the insertion point is surrounded by the following tags:

HTML BODY P

and you set the Font Family to Adopt Current in the BODY and P elements, then whatever font family you establish in the HTML element will ripple through the entire structure.


Font Size

Selecting the font size is similar to selecting the font family. You can open the Font Size drop-down list box and choose any size (including Adopt Current) shown. You may also enter a size in the text box to the left of the arrow. This size may be an absolute or relative value. If the size you chose is unavailable, HoTMetaL PRO will choose the next smallest font size. Relative values are added to the point size of the surrounding element.

The default font size can be specified with the default_font_size configuration variable. A font size specified in this manner will be the default for all open documents. The built-in default font size is 12 points.


Font Style

The check boxes under the Font Style heading allow you to add style variations to the font family. The check boxes can be set individually or in any combination. If you want the style to be the same as the style for the surrounding element, click on the Adopt Current check box only.

Bold, Italic

As an example, consider a document with three emphasis elements: B, I, and EM. So that the contents of these elements will stand out, you could set the font family and font size to Adopt Current for each of these elements, make them all Inline(see below) and then set B to Bold, I to Italic, EM to Bold and Italic. These emphasis elements would then cause their contents to be the same font and size as the surrounding text but each would have a different style.

Superscript, Subscript

Superscript and Subscript raise and lower, respectively, the baseline of the font. Superscripted text is raised so that its baseline is one-third of its ascent above the baseline of the containing element. (The ascent is roughly the distance from the baseline to the top of an uppercase letter.) Similarly, the baseline of subscripted text is lowered to be one-third of the ascent below the baseline of the surrounding element. To make effective use of these style options, either choose a font size that is smaller than the size of the containing element or ensure that the line spacing of the containing element is large enough that the tops of the superscripted characters and bottoms of the subscripted characters are not cut off.

Toggle

When Toggle is selected as part of the font style, the other style settings are turned off if they are turned on in the containing element. For example, an element whose font style is set to Bold and Toggle will appear as bold text within plain (Roman) surrounding text and as plain within bold surrounding text.

Adopt Current

Adopt Current means that the font style options of the containing element are adopted in addition to those explicitly set for this element type. For example, if Adopt Current is the only option selected, then the font style for an element of this type will be identical to the font style of its containing element. Another example would be an element whose font style is set to both Adopt Current and Italic. Then the element's text will appear with a font style of italic within an element containing plain text and as bold-italic in bold text.

Underline

Underline allows you to underline the text of the element.


Line Height

The Line Height specifies the vertical height from the bottom of one line to the bottom of the next line in the same element. This value should normally be set slightly larger than the font size so that the lines won't appear clipped.

You may select single, double, or triple spacing from the drop-down list box labeled Line Height. Double spacing gives twice the line height of single spacing; triple spacing gives three times the line height of single spacing. A value may also be entered directly in the text box to the right of the arrow. This value may be absolute, relative, or a percentage.

A percentage line height is understood as a percentage of single spacing. I.e., 100 percent is the same as single spacing, 150 percent is 1.5 times as high as single spacing, and so on.

If you give a relative value then the line height is equal to the single spaced line height, plus or minus the amount specified.

An absolute line height should be at least as large as the point size: otherwise, the lines will overlap. A value of about 1.2 times the point size would be normal.

If you select Adopt Current for the line height, then the element you are formatting will assume the absolute line height of its surrounding element. So if the surrounding element has a font size of 12 points and single line spacing, and you choose, say, a font size of 24 points for the current element, it will have the same line height as if it had a font size of 12 points, because that is the line height of the surrounding element. Line height defaults to Adopt Current.


Justification

HoTMetaL PRO offers four styles of text justification plus the ability to inherit the justification style from the surrounding element. You can choose the one you want by clicking on the appropriate icon. The styles are mutually exclusive: you can choose just one.

The choices are:

–    Left (flush left, ragged right): All the spaces between words are the same width, and the text is aligned on the left, leaving the right-hand edge uneven.

–    Right (flush right, ragged left): All the spaces between words are the same width and the text is aligned on the right.

–    Centered: all the spaces between words are the same width and the lines are centered on the midpoint of the line length.

–    Both (flush right and left often called justified): Spaces between words are adjusted to force both left- and right-hand edges of the text to be even.

–    Adopt Current: the justification style is inherited from the surrounding element.


Fill

This group of choices allows you to specify whether HoTMetaL PRO should treat carriage return characters as spaces or as ends of lines. When Fill is selected, the lines are broken at the last space before the right indent. If you type Return a return character is inserted but is treated as though it were a space. When No Fill is selected, HoTMetaL PRO will not fill the lines when you type Return, a new line will be started.

For example, poetry and centered headings would normally be in No Fill mode, while the contents of a paragraph would be in Fill mode.

Saving filled elements

When you save a file, you may choose to have line breaks inserted after a certain number of characters in all elements that are in fill mode. See the description of the Save command in the chapter on the File menu for more details.


Format Types

For the purposes of screen formatting, the elements are divided into two broad categories: Block and Inline. You can set the category for each element by clicking on the appropriate option button in the Format Type group.

Block

Block elements:

–    Always start on a new line if there are any end-tags or text on the current line.

–    Cause any element or text that follows them to begin on a new line.

–    Can have all the formatting options set: justification, font family, size and style, vertical and horizontal spacing, and tab settings.

Inline

Inline elements:

–    Cause no line break either before or after the element. This format might be used for an emphasized word or phrase or a short quotation.

–    Can have only certain formatting options set: font family, size, and style. The other options are inherited from the surrounding element.


Separation...

This command lets you set the amount of vertical space that separates an element from neighboring elements. To edit these values, move the insertion point inside an instance of an element you want to format, and click on the Separation...menu item, or click inside the desired element when the Separation dialog is already on the screen.

Top and bottom space

Tabbed elements


Top and bottom space

Top and bottom space control the vertical separation between elements. They are available only for block elements.

Top Space determines the minimum amount of vertical white space that must precede the element. If the element before this one has a Bottom Space value, the actual separation will be the greater of the current element's top space and the preceding element's bottom space.

The top space can be specified as an absolute amount or as a percentage of one line height at the current line height. For example, if you want 1 1/2 lines of white space between paragraphs, set the top space to 150%. The top and bottom space separations are added to the normal line spacing, so if two successive elements have a bottom separation of zero and top separation of zero, respectively, the baseline of the last line of the first element and the first line of the following element will be one line height apart.

Bottom Space determines the minimum amount of vertical white space that must follow the block. The actual separation is the greater of the current element's bottom space and the next element's top space. The value is specified in the same way as for Top Space, above.


Tabbed elements

An element that has Tabbed turned on is formatted as if it started with a tab. (See Ruler..., below, for information on setting tab stops.) This command does not actually insert a tab into the text. Both block and inline elements may be designated as tabbed. This option is useful for displaying simple tabular material.


Color...

If you are using HoTMetaL PRO on a color display, this command allows you to set the color in which the text and affixes of elements are displayed. For each element, you may choose a foreground color and a background color. The foreground color is the color of the text; the background color is the color of the bounding box of each character.

To choose the colors for an element, put the insertion point inside an occurrence of that element, and click on the Color... command.

When the command is invoked, you are presented with a dialog box containing two scrollable lists from which colors can be chosen, one for the background, one for the foreground. In this example, the foreground color is chosen explicitly, and the default is adopted for the background. These lists contain the colors that are currently loaded into HoTMetaL PRO for the foreground and background. In addition, the lists contain entries Adopt Current, Default Background, and Default Foreground. To choose a color, click on the color in the list and it will be placed in the text box underneath the list. Alternatively, you can enter a color in the text box by typing it in directly. Then click on the Apply button.

Adopt Current means that the color of the surrounding element will be adopted for the current element. If the choice in one of the lists is Adopt Current, then the other one will revert to Adopt Current also. You can, however, use Default Background or Default Foreground in conjunction with another color choice.

The color map file

Color numbers

Highlight mode


The color map file

If you specify a color name, then that name must have an entry in the color map file (sometimes called an rgb.txt file). A color map file is a file that associates a color name with a number that describes the color by specifying the mixture of red, green, and blue that makes up that color. The entries in the color map file are in the form:

  65 105 225 RoyalBlue

The three numeric values (which are dependent on the video card installed for your display) indicate the red, green, and blue values, respectively. Such an entry will cause the name RoyalBlue to appear in the foreground and background lists in the Colors dialog box. The color map file is identified with the rgb_txt configuration variable. By default, this is a file called rgb.txt in the directory where the HoTMetaL PRO software was installed. The color names that appear in the dialog box are those that are mapped in the color map file. If you enter a color that doesn't have an entry in the color map file in one of the text boxes in the Colors dialog box, that color will be displayed as the default foreground or background color, as appropriate. The color you typed in will be entered in the styles file anyway, so that if you subsequently update the color map file to include an entry for the new color, it will display as desired.


Color numbers

You can add a color by typing its hexadecimal designation in one of the text boxes. This consists of six hexadecimal digits preceded by a number (hash) sign, `#'. For example:

  #ef6a02

The first two digits indicate the red values, the next two the green values, and the last two the blue values. Again, the numbers depend on the video card for your display. This number will appear as the color name in the color lists.


Highlight mode

There are two highlight modes: default and inverted. In default highlighting mode, highlighted text will be displayed in reverse-video: text will be in the default background color, and the background will be in the default foreground color. Normally this means white text on a black background. In inverted mode, the selected text has all foreground and background colors reversed. For example, if the text was normally displayed in red and the background in green, then when a region is highlighted, the text will be in green and the background in red. You can set the mode using the highlight_mode configuration variable.


Ruler...

This command is used to set indents and tab stops for a block element. To obtain the dialog box, move the insertion point inside an instance of the element you want to format, and click on the Ruler...menu item, or click inside the desired element when the Ruler dialog is already on the screen.

Ruler... allows you to set three types of indention plus tab stops.

Left and right indents

First indent

Tab stops


Left and right indents

The left and right indents are used to define a column that contains the content of the element. As a result, they effectively specify the line length for the element.

The left indent specifies an amount that the element is moved to the right; the right indent specifies the point at which the lines in an element are terminated.

No indent can be set to the left of the global left margin or to the right of the global right margin. Within these limits, text can appear outside the indents of an element if a negative first indent is set (see below) or if the element's content is not being filled and it contains a long enough line. With those exceptions, left justified and justified text starts flush with the left indent, centered text is centered within the two indents, and right justified and justified text ends flush with the right indent.

An absolute or relative value may be entered in the text boxes for the different indents.

Absolute indent

An absolute indent (a value that does not start with a plus or minus sign) is actually relative to the global margins. In this case the indent specifies the amount of space between the margins and the content of the element. Absolute indents must be positive numbers, or zero. For example, if you specify a value of zero for the left indent, the indention will be identical to the global left margin. If you specify `1 inch', the indention will be one inch to the right of the global left margin.

Relative indents

Relative indents (values that start with a plus or minus sign) are relative to the indention of the surrounding element. The values may be positive or negative. A positive value moves the indention to the right, relative to the surrounding indention. For example, a value of `+1 inches' for the left indent causes the indent to be one inch to the right of the left indent for the surrounding element. A negative value moves the indention to the left. For example, a right indent of `-1 inches' causes the indent to be one inch to the left of the right indent for the surrounding element.

Adopt Current

If an indent is Adopt Current then it is given the value set for the current element's containing element. (This is equivalent to specifying a relative indent of +0.)


First indent

The indent for the first line can be different from the indent for subsequent lines: this is often done for paragraphs. If you select a relative indent, positive or negative, the value you choose will be added to the left indent. An absolute indent will be measured from the global left margin. A first indent specified as Adopt Current is the same as a relative indent of +0.

The first indent is treated as a tab stop so that a block element that has a first indent and begins with a tabbed inline element or prefix will tab to the first indent and be formatted accordingly. First indents, unlike tabs, are not inherited.

A first indent cannot be set to the left of the global left margin or to the right of the global right margin.


Tab stops

Tab stops allow for the specification of the positions and types of tabular columns. Tab stops are not used by browsers (except sometimes within a PRE element), so the settings you make here will affect the HoTMetaL PRO display only.

If you insert tabs into the text, each tab stop determines how the text that follows the corresponding tab is displayed. The first tab stop determines how text following the first tab that occurs in the line is positioned, the second tab stop determines how text following the second tab that occurs in the line is positioned, and so forth.

Types of tab stop

Four types of tab stop are supported:

–    A left tab stop means that text that follows the tab will be displayed flush left with the tab position.

–    A right tab stop means that text that follows the tab will be displayed flush right with the tab position.

–    A centered tab stop means that text that follows the tab will be displayed centered on the tab position.

–    A character tab stop means that text that follows the tab will be displayed so that the first character in the text that matches the specified tab character is flush left to the tab position. (If the type is character but no character in the following text matches the tab character, then the text is displayed flush right to the tab position.)

Specifying the tab stops

The tab stops are specified by entering a string of tab stop specifications, separated by spaces, into the Tabs text box.

Each tab stop specification consists of a type specifier followed by a position. For example:

  |100

Here, the `|' character is the type specifier, and `100' is the position. This specification is for a centered tab stop located 100 pixels from the left indent.

Tab positions are measured from the left indent. The tab position can be absolute or relative. Relative values are added to the previous tab position.

The conventions for specifying the type of a tab stop are as follows:

–    A tab stop specification that starts with a right angle bracket, `>', signifies a right tab stop.

–    A tab stop specification that starts with a vertical bar, `|', signifies a centered tab stop.

–    If the tab stop specification starts with the letter `c' followed by any character, then that character becomes the tab character for that tab stop.

–    If the tab stop specification doesn't start with any of these characters (i.e., it consists only of a tab position) then it specifies a left tab stop.

The conventions for specifying the tab stop position are as follows:

–    You can use any of the units, and conventions for specifying them, described in the Overview section of this chapter.

–    If a tab position starts with a plus sign, `+', then it specifies a relative position. This position is added to the position of the tab stop immediately to the left.

–    If a tab position does not start with a plus sign, it specifies a tab position that is measured from the left indent for the current element.

Examples

The following string is an example of a tab specification string:

  0.5i >+3.5cm |+100 c%500

This specifies four tab stops: a left tab position at a distance of 0.5 inches from the left indent, a right tab position at 3.5 centimeters from the first tab position, a centered tab position at 100 pixels from the second tab position and a character tab positioned 500 pixels from the left indent, with a tab character of `%'. (A typical use for a character tab is in decimal columns, when the character selected is a period, but HoTMetaL PRO permits this more general specification.)

The following illustration shows how the different tab stops work. The tab stop settings in effect are:

  0.5i >+1i |+1i c.+1i

In this example, the first tab stop is a left tab 0.5 inches from the left side of the screen: as you can see, the column of b's is left-justified along this tab stop. The next tab stop is a right tab stop located one inch from the first tab stop: the column of c's is right-justified along this tab stop. The column of d's is center-justified on the third tab stop, one inch from the second tab. Lastly, the column of numbers is aligned on the decimal point, at a tab stop one inch from the third tab stop. (The column of a's occurs before the first tab, and is simply aligned with the left side of the screen.)


Save Styles...

This command allows you to save the document styles in text format. When this command is invoked, a file selection dialog box appears, allowing you to choose a file name to save the styles in. The default directory in this dialog box is the one listed first by the ascii_styles_path configuration variable.


Load Styles...

This command allows you to load a styles file in text format. When this command is invoked, a file selection dialog box appears, allowing you to choose a styles file. The current directory is the one listed first by the ascii_styles_path configuration variable.

The binary styles file is updated with the formatting information loaded from a text styles file when the current file is saved. If you copy a styles file from one environment to another, you may experience formatting anomalies if the environments support different fonts. In this case, you may wish to open the styles file as a text file, change the font names as appropriate, and then reload the file.


The Markup menu

The Markup menu contains commands to insert and edit HTML markup.

Interpret Document

Insert Element...

Surround...

Change...

Split

Join to Preceding

Remove Tags

Edit SGML Attributes...

Edit URL...

Insert Character Entity...

Table Properties...

Cell-Row-Column Properties...

Edit Table...

Cell Spans...


Interpret Document

Sometimes you will attempt to open a document that contains structural errors and HoTMetaL PRO will be unable to correct them. In this situation HoTMetaL PRO will give you the choice of passing the file through a filter or opening it as a text document so that you can correct the errors manually. In the latter case, when you have corrected the errors in a text document, and while the text document is still the current open document, you can use Interpret Document to convert it into an open document in HoTMetaL PRO's internal format (which causes tag icons to be displayed and allows graphical editing). Alternatively, you can save the document and then open it using the Open... command in the File menu.

If Interpret Document discovers an error in the document, the error will be reported and the insertion point will move to its location. In this situation, the document will not be converted to HoTMetaL PRO format.

Interpret Document is very similar to Open...: the difference is that Interpret Document does the equivalent of an open on the current open text document, rather than on a file that was chosen from a file selection dialog box.

This command will be enabled only of the current document is a text document. Normally HoTMetaL PRO does not allow you to open a text document for editing as text: a file can be opened in this form only if it contains structural errors that HoTMetaL PRO cannot resolve.


Insert Element...

This command creates a new element by inserting a new pair of start- and end-tag icons.

When you invoke this command, you are given the Insert Element dialog box, which contains a list of names of the elements permitted by the rules file at the location of the insertion point (or selection) in the document.

The list of elements

Inserting an element

Restrictions

Required elements


The list of elements

The left column of the list box contains an alphabetical list of element names; the right column contains a phrase describing the corresponding element. The first element (if there is one) required by the HTML rules file at this point in the document will be followed by the `<' character.


Inserting an element

To select an element, click once on the line containing the element name, or type the first character of the element name repeatedly until the correct element is selected. Then click once on the Insert Element button to insert it. Alternatively, you can double-click on the line that contains the element name in the scroll box.

If the document contains a selection rather than an insertion point, the selection will be overwritten by the inserted element.


Restrictions

Insert Element... will be disabled and the menu item grayed-out if there are no elements that can be inserted at the insertion point or current selection without creating an incorrectly marked up document. Often the command will become enabled if rules checking is turned off (see Turn Rules Checking On/Off), but there are some elements in which you will never be allowed to insert an element: BASE, BR, HR, IMG, INPUT, ISINDEX, LINK, LISTING, META, NEXTID, PLAINTEXT, and XMP.


Required elements

The Insert Element dialog box includes a check box labeled Include Required Elements. When this box is selected, inserting an element causes the first required subelement (if there is one) to be inserted as well. This option may also be set with the include_required_elements configuration variable. This process is recursive, so that if the required subelement itself has a required subelement, this element will also be inserted, and so forth. Note that this does not mean that all required subelements of the current element will be inserted, only the first required subelement (and its required subelements).


Surround...

This command lets you surround the current selection with a new element.

This command will be available only if the document contains a selection. When you invoke Surround..., the Surround dialog box appears: it contains a list of elements that can surround the selection and still leave the document correctly marked up. Choose an element in the same manner as when inserting an element. Required and included elements will be identified in the same way as in the Insert Element dialog box.

The command will be disabled and the menu item grayed-out if there are no elements that can surround the selection without creating an incorrectly marked up document. Often the command will become enabled if rules checking is turned off (see Turn Rules Checking On/Off), but there are some circumstances in which you will never be allowed to surround a selection.

–    You cannot surround any selection with one of the following elements: BASE, BR, HR, IMG, INPUT, ISINDEX, LINK, META, and NEXTID.

–    A selection that contains an element cannot be surrounded with LISTING, PLAINTEXT, or XMP.

–    A selection inside LISTING, PLAINTEXT, or XMP cannot be surrounded.


Change...

Changes the type of the current element. (The current element is the innermost element containing the insertion point or selection. If the selection consists of an entire element, including its start- and end-tags, then the current element is the one containing the selected element, not the selection itself.)

When you invoke this command, HoTMetaL PRO presents you with a dialog box containing a list of elements that can replace the current element and still leave the document correctly marked up. You may choose the appropriate element from the list in the ways described above for the Insert Element... and Surround... commands.

The command will be disabled and the menu item grayed-out if there are no elements that can replace the current element without creating an incorrectly marked up document. Often the command will become enabled if rules checking is turned off (see Turn Rules Checking On/Off in the Special menu), but there are some circumstances in which you will not be allowed to change the current element:

–    If the current element has any content (elements, text, or character entities) you cannot change it to any of: BASE, BR, HR, IMG, INPUT, ISINDEX, LINK, META, and NEXTID.

–    If the current element contains any other elements, you cannot change it to any of: LISTING, PLAINTEXT, and XMP.


Split

Splitting an element literally means breaking it into two elements at the current insertion point or selection.

If the document contains a selection, this command creates two elements of the same type, one containing all of the content before the beginning of the selection and the other containing the remaining content. If there is an insertion point directly before an end-tag (for example, when you are typing at the end of a paragraph) then Split creates a new, empty element with the same type as the current element. In fact, the most common use of the Split command is to start a new paragraph. When the current paragraph is finished, selecting Split will start a new one.

The command will be disabled and the menu item grayed-out if the current element cannot be split without creating an incorrectly marked up document. This command will always become enabled if rules checking is turned off (see Turn Rules Checking On/Off).

Attributes

Required elements


Attributes

When you split an element that has attributes, each of the resulting elements will adopt the attributes of the original element. In some cases, the Edit Attributes dialog box will appear, allowing you to edit the attributes of the new element containing the insertion point. The prompt_for_attrs configuration variable may be used to configure HoTMetaL PRO so that attributes are always asked for, or asked for only when one of the attributes is mandatory.


Required elements

If the Include Required Elements option is turned on, then if you are using Split to create a new, empty element by splitting the current element just before the end tag, the new element's first required element will be inserted. This is the same as if the Insert Element... command were used to insert the new element.


Join to Preceding

Combines the current element and the previous element. You are allowed to join only elements of the same type two paragraphs, for example, or two list items.

The command will be disabled and the menu item grayed-out if the action will leave the document incorrectly marked up, if the two elements to be joined are not of the same type, or if there is any text other than spaces, tabs or carriage returns between the two elements. (Any such white space between the elements will be deleted by the Join command.)

If the elements have attributes, then the attributes of the first element will be adopted for the new element.


Remove Tags

Deletes the start- and end-tags of the current element without affecting its contents.

The command will be disabled and the menu item grayed-out if the action will leave the document incorrectly marked up. However, it will always be enabled if the rules are not being checked (see Turn Rules Checking On/Off).


Edit SGML Attributes...

This command lets you view and edit the attributes of the current element. If you wish to edit an attribute that specifies a URL, you should instead use the Edit URL... command.

To edit the attributes of an element, set the insertion point inside that element (i.e., make it the current element). Then invoke the Edit SGML Attributes... command. You will be presented with a dialog box that can be used to edit the attribute list.

The dialog box will change depending on the type and number of attributes that have been defined for this element in the rules file. In every case, however, the dialog box will consist of several lines, one per attribute. Each line will consist of:

–    The name of the attribute.

–    A drop-down list box or a text box, depending on the type of attribute. If the attribute value is defined as being one of a list of values, then the line in the dialog box line for that attribute will contain a drop-down list box giving the possible values. Otherwise, you will see a text box.

When you have entered the desired attribute values, click on the Apply button.


Edit URL...

Edit URL... is used to edit an attribute that represents a URL. To use this command you should:

•    Put the insertion point inside the element whose attribute you wish to edit.

•    Invoke Edit URL....

This command is disabled if the current element does not contain an attribute representing a URL. If the Edit URL dialog box is visible and the insertion point is moved to an element that does not have such an attribute, the dialog box will disappear.

The `Edit URL' dialog box

Editing a URL


The `Edit URL' dialog box

The Edit URL dialog box contains the following controls:

–    A drop-down list box labeled Attribute, containing a list of all the attributes of the current element that represent a URL. (Often this list will contain only one attribute.)

–    An drop-down list box labeled Protocol, containing a list of protocols and templates for URLs. The protocol is the part of the list item to the left of the first colon (:), and the template is the part to the right of the first colon. For example:

  gopher://<host>:<port>

`gopher' is the protocol, and `//<host>:<port>' is the template. The protocol describes how the information contained in the URL is to be used by a browser. Some common protocols are: –    gopher indicates an address on a gopher server.

–    http indicates an address on a WWW server.

–    file indicates an address on a local server.

–    ftp indicates an address on an ftp server.

–    mailto indicates that the information in the URL specifies a mail address (often used, for example, in forms that are to be mailed back to a vendor).

The template determines the structure of the address contained in the URL. In addition to literal characters, a template can contain the following fields: –    <host> stands for a host of some kind, such as a WWW or ftp server, or the domain name in a mail address. If this field is present, the Host text box is activated (see below).

–    <name> stands for a name, typically a file name or user name in a mail address. If this field is present, the Name text box is activated (see below).

–    <port> stands for a port number. If this field is present, the Port text box is activated (see below).

A particular protocol can be associated with more than one template. Since the list of protocols and templates is configurable at your site, it may contain different entries than those described above.

–     Text boxes labeled Host, Port, and Name. These boxes are used to enter the host, port, and name component, respectively, of a URL. A particular box will be activated only if the corresponding field is present in the currently selected template (see above).

–    A Choose File... button, which will bring up a file selection dialog box. This dialog box can be used instead of the Name text box when the name component of the URL is a filename on your system.


Editing a URL

To edit a URL, you should do the following:

1. Choose the corresponding attribute from the Attribute drop-down list box.

2. Choose the required protocol and template.

3. Using the Host, Port, and Name text boxes and the Choose File... button, when activated, enter the desired information.

4. Click on the Apply button.


Insert Character Entity...

This command lets you insert a character entity into the document. Character entities represent special characters that you may not be able to enter into a document directly from your keyboard.

When you invoke this command you get a dialog box displaying containing push buttons for the special characters in the ISO 8859-1 character set. To insert a character, just click on the button with the mouse.

If the character you want to insert is not found in this dialog box, you should click on the Other... button. When you do so you will get a dialog box that lets you choose character entities from a number of entity sets. The entity set is chosen from the drop-down list box labeled Entity Set. The character entities in the selected entity set are displayed in the list labeled Defined Entities. This list has three columns: the first column gives the entity names; the second column will give some information about the kind of entity that has been defined (normally this will say SDATA, indicating that the character entity is a specific character data entity in SGML); the third column in the list gives the content of the character entity.

To choose an entity set, click on the Entity Set drop-down list box and make a selection from the list that appears. One of your choices is Local & Active: this set contains all the character entities that have been used in the current document so far. The effect of this is that character entities that are likely to be frequently used are conveniently grouped together. If no entities have been used to this point, this list will be empty. The other entity sets have labels indicating the kind of special character that they contain diacritical marks, special graphics characters, etc. When you choose an entity set, its entities will be displayed in the Defined Entities list.

Inserting a character entity

Displaying character entities


Inserting a character entity

You can insert a character entity by double-clicking on the entity name, or clicking once on the name and once on the Insert button.

If the document contains a selection (as opposed to an insertion point)before the character is inserted, the selection will be replaced by the entity reference.

You will never be allowed to insert a character entity into the elements BASE, BR, HR, IMG, INPUT, ISINDEX, LINK, LISTING, META, NEXTID, PLAINTEXT and XMP.


Displaying character entities

If the Show Tags command is invoked (see the View menu) a character entity appears on the screen as an icon consisting of a box containing the character name. If Hide Tags is invoked, the character itself is displayed. (There are a few characters that HoTMetaL PRO cannot display in these cases the character name, surrounded by square brackets, will be displayed instead.) By default, character entities (and tags) are displayed as icons.

You cannot put an insertion point in the icon or the expanded text view of the character entity. You can only select the entire character. That is done by clicking the mouse to one side of it and then dragging across it.


Table Properties...

Allows you to change default settings for the entire table, for all rows, or for all columns. Any properties you set here are overridden by changes you make to individual rows, columns, or cells using the Cell-Row-Column Properties...menu selection.

The Table Properties... command presents you with a dialog box that consists of three sections:

–    Table Properties

–    Default Row Properties

–    Default Column Properties

Table Properties

Default Row Properties

Default Column Properties


Table Properties

This section of the dialog box allows you to indicate the height and width of the table. Neither of these items is required: the table height defaults to the combined height of the rows, and the width defaults to the combined widths of the columns.


Default Row Properties

This section of the dialog box allows you to indicate how rows in the table should be formatted. A setting for an individual row using the Cell-Row-Column Properties... command will override the settings in this dialog box.

Height

Use this entry to indicate the default row height.

If you do not specify a value, the row height is taken to be the height of the table divided by the number of rows in the table.

Vertical Alignment

Indicate here how text should be vertically aligned in the cells of the rows. Top justification is the default.

Row Separators

Indicate here the row separator along the bottoms of the rows. The default is a single line.

Column Separator (Left-most)

Indicate here the left-most column separator in the table. The default is a single line.


Default Column Properties

This section of the dialog box allows you to indicate how columns in the table should be formatted. A setting for an individual column using the Cell-Row-Column Properties... command will override the settings in this dialog box.

Width

Indicate here the default column width.

If you do not specify a value, the width of a column is taken to be the width of the table divided by the number of columns in the table.

Justification

Indicate here how text should be horizontally aligned in the cells of the table. Left justification is the default.

Column Separator

Indicate here the column separators along the right edges of the columns. The default is a single line.

Row Separator (Top-most)

Indicate here the top-most row separator in the table. All other row separators are determined by the row settings or by the cell above the separator.


Cell-Row-Column Properties...

Provides a dialog box for setting the properties of the row, column and cell containing the insertion point. Row and column changes apply only to the current row and column, but override any settings you may have made with the Table Properties... command. Changes you make in this dialog box to the current cell properties override properties of the current column and row as well as those for the entire table.

The Edit Row/Column/Cell Properties dialog box has three sections:

–    Row Properties

–    Column Properties

–    Cell Properties

Row Properties

Column Properties

Cell Properties


Row Properties

This section of the dialog box allows you to indicate how the row containing the insertion point should be formatted. These settings override (for the current row) any defaults you may have set using the Default Row Properties section of the Table Properties dialog box. You can override these settings for individual cells by using the Cell Properties section of this dialog box.

Height

These entries set the height of the current row. If you do not specify the height it will taken to be the default row height set in the Table Properties dialog box.

Vertical Alignment

Indicate here how text should be vertically aligned in the cells of this row. This choice defaults to adopt current (AC).

If you choose adopt current, the vertical alignment setting in the Default Row Properties section of the Table Properties dialog box will be inherited.

Row Separator

Indicate here the separator along the bottom of the current row. If you choose adopt current, the row separator set in the Default Row Properties section of the Table Properties dialog box will be inherited. The default is adopt current.

Column Separator (Left-most)

Indicate here the left-most column separator in this row. All other column separators are determined by the column settings or by the cell to the left of the separator. If you choose adopt current the left-most column separator set in the Default Row Properties section of the Table Properties dialog box will be inherited. The default is adopt current.


Column Properties

This section of the dialog box allows you to indicate how the current column (the one containing the insertion point) should be formatted. These settings override (for the current column) the settings from the Default Column Properties section of the Table Properties dialog box. You can override these settings for individual cells using the Cell Properties section of this dialog box.

Width

Use these entries to indicate the width of the current column. The width of the column defaults to the column width set in the Table Properties dialog box.

You may set the column width as a percentage of the total table width only if the table width has been set explicitly using the Table Properties... command.

Justification

Indicate here how text should be justified in the cells of the current column. If you choose adopt current as the justification, the justification set in the Default Column Properties section of the Table Properties dialog box will be inherited. Justification defaults to adopt current.

Column Separator

Indicate here the column separators along the right edges of the current column. If you choose adopt current, the column separator set in the Table Properties dialog box will be inherited. The default is adopt current.

Row Separator (Top-most)

Indicate the top-most row separator in this column. All other row separators are determined by the row settings or by the cell above the separator. If you choose adopt current, the top-most row separator set in the Table Properties dialog box will be inherited. The default is adopt current.


Cell Properties

This section of this dialog box allows you to set properties that only apply to the cell containing the insertion point. These settings override (for the current cell) the row and column settings you may have made with this dialog box as well as the default settings from the Table Properties dialog box.

Vertical Alignment

Indicate here how text should be vertically aligned in this cell. If you choose adopt current, the vertical alignment from the row that contains the current cell is inherited. Vertical alignment defaults to adopt current.

Justification

Indicate here how text should be justified in this cell. If you choose adopt current, the justification of the column containing the cell will be inherited. Justification defaults to adopt current.

Column Separator (Right edge)

Indicate here the column separator on the right edge of this cell. If you choose adopt current, the column separator set with Table Properties...will be inherited. The default is adopt current.

To set the column separator along the left edge of the cell, you must set the column separator for the cell(s) that are immediately to the left of the current cell.

Row Separator (Bottom edge)

Indicate here the row separator along the bottom of this cell. If you choose adopt current, the row separator set with Table Properties...will be inherited. The default is adopt current.

To set the row separator along the top of this cell, you must set the column separator for the cell(s) that are immediately above the current cell.


Edit Table...

Permits you to add or delete a single row or column.

When you select Edit Table... you are presented with a dialog box which lets you carry out the following operations:

–    Insert Row Above create a new row above the row containing the insertion point.

–    Insert Row Below create a new row below the row containing the insertion point.

–    Delete Row delete the row containing the insertion point.

–    Insert Column Right create a new column to the right of the column containing the insertion point.

–    Insert Column Left create a new column to the left of the column containing the insertion point.

–    Delete Column delete the column containing the insertion point.

Inserting rows

Inserting columns

Deleting rows and columns


Inserting rows

The Insert Row Above and Insert Row Below buttons create a new row that takes on the row defaults of the active row. The tables interface determines which row is active, as follows:

–    If the cell containing the insertion point consists of a single grid cell, the row containing that grid cell is active.

–    If the cell containing the insertion point spans several rows, the spanned row furthest in the direction of the insert is active.

For example, if the insertion point is located in a cell spanning two rows and you click on the Insert Row Below button, the new row has the same defaults as the lower of the two spanned rows.

A new row is created above (or below) the active cell. The cells in the new row each contain exactly one grid cell, except where inserting such a cell would cause an existing spanned cell to be split. In that case, the number of rows spanned by the existing cell is increased by one.


Inserting columns

The Insert Column Left and Insert Column Right buttons create a new column that takes on the column defaults of the active column. The tables interface determines which column is active, as follows:

–    If the cell containing the insertion point consists of a single grid cell, the column containing that grid cell is active.

–    If the cell containing the insertion point spans several columns, the spanned column furthest in the direction of the insert is active.

For example, if the insertion point is located in a cell spanning two columns and you click on the Insert Column Right button, the new column has the same defaults as the rightmost of the two spanned columns.

The new column is created next to the active column, in the direction of the insert. Each cell in the new column consists of exactly one grid cell, except where inserting such a cell would cause an existing spanned cell to be split. In that case, the number of columns spanned by the existing cell is increased by one.


Deleting rows and columns

The Delete Row and Delete Column buttons delete the current row or column, along with its contents, subject to these rules:

–    Delete Column will have no effect if the current column contains a cell that spans more than one column.

–    Delete Row will have no effect if the current row has a cell that spans more than one row.

In each of these cases you will have to contract the spanning cell(s). (See the Cell Spans....command, below.)


Cell Spans...

Allows you to change the spanning on the cell containing the insertion point.

The dialog box contains eight icons, four for extending cells and four for contracting them.

Extending cells

Contracting cells


Extending cells

The cell-extending icons, in clockwise order from the top, are:

–    Extend up: extends the top boundary of the cell one grid cell up.

–    Extend to right: pushes the right boundary of the cell one grid cell to the right.

–    Extend down: extends the bottom boundary of the cell one grid cell down.

–    Extend to left: pushes the left boundary of the cell one grid cell to the left.

All extending actions eliminate one cell from the table. Cells may be extended subject to these rules:

–    Cells may not be extended beyond the edge of the table.

–    For vertical extensions, the cell you are extending must span the same number of columns as the cell you are eliminating.

–    For horizontal extensions, the cell you are extending must span the same number of rows as the cell you are eliminating.

–    Of the two cells involved in the extension (the one containing the insertion point and the one to be eliminated), at least one must be empty.


Contracting cells

The cell-contracting icons, in clockwise order from the top, are:

–    Contract from top: pulls the top boundary of the cell one grid cell down.

–    Contract from right: pulls the right boundary of the cell one grid cell to the left.

–    Contract from bottom: pulls the bottom boundary of the cell one grid cell up.

–    Contract from left: pulls the left boundary of the cell one grid cell to the right.

A contracting action creates a new cell in the space left by the contraction; the new cell consists of at least one grid cell.


The Special menu

The Special menu contains commands for document checking and macros.

Validate Document/Selection

Turn Rules Checking On/Off

Run Macro...

Load Macros...

Save Macros...

Edit Macros...

Record Macro/Stop Recording...


Validate Document/Selection

Verifies that the markup in a document is correct and complete.

If the validation process finds an error in the document, you will be notified of the error and the insertion point will move to the place where the error occurred.

Errors detected by validation

Validate Selection


Errors detected by validation

The purpose of the Validate Document command is to catch and report any markup errors not found by the rules checking. It will check that:

–    All required elements are present.

–    All required attributes are present.

–    All attributes are in the correct form.

–    All ID attribute values are unique.

–    Validate Document detects SGML markup that has been entered as text. –     The `<' character followed by one or more alphanumeric characters (e.g., `<Enter') will be interpreted as an element start-tag. This will result in an error if the element does not appear in the current rules file.

–    An `&' followed by one or more alphanumeric characters (e.g., `&cetera') will be interpreted as an character entity. This will result in an error if the character does not exist.


Validate Selection

If your document contains a selection, the menu item will read Validate Selection. In this case, your selection will be validated as a partial document.


Turn Rules Checking On/Off

This command toggles the state of rules checking in HoTMetaL PRO.

When rules checking is on, HoTMetaL PRO uses the rules file to ensure that the document being edited will be correctly marked up. While this checking is not complete, it will nevertheless catch and prevent most markup errors.

HoTMetaL PRO prevents markup errors in a number of ways.

–    The commands that could cause errors are disabled. For example, the Surround command in the Markup menu will be grayed-out if the document would not be correctly tagged after the selected content was surrounded by any element.

–    A restricted list of elements is presented. For example, the Insert Element... command will only present a list of those elements that will leave the document correctly tagged after the insertion.

–     An opportunity is given to cancel a command before any damage is done. For example, if a Paste operation would leave the document incorrectly tagged, HoTMetaL PRO will present a warning giving the choice of canceling the paste or completing the command after first turning rules checking off.

Rules checking is normally desirable, since it greatly reduces the chance of making markup errors. However, there are occasions when rules checking can get in the way of the job at hand. Most commonly this happens when the operation that you are performing involves two or more steps, and one of those intermediate steps will leave the document temporarily incorrectly marked up.

When the rules are not being checked, the commands that were previously disabled will usually become enabled; for the exceptions, see the documentation on the individual commands. This means that you will be able to create an incorrectly tagged document, and therefore you should leave the rules off only as long as you need to.

When you choose Turn Rules Checking On from the menu, the menu item changes to Turn Rules Checking Off to indicate that this state can be toggled. When you turn rules checking back on, HoTMetaL PRO will quickly scan your document to make sure it is correctly tagged. If it isn't, HoTMetaL PRO will present a warning describing the problem and the insertion point moves to the location of the error. Rules checking will remain off. Select Turn Rules Checking On again after the problem is corrected.


Run Macro...

Macros are sequences of actions associated with user-defined keyboard sequences (known as accelerators). Using the Record Macro and Stop Recording... commands, described below, you can associate an accelerator with a series of HoTMetaL PRO operations.

The Run Macro...command presents a dialog box that gives a list of all the macros that are currently available. This list includes macros that have been loaded from a file and those that have been defined in the current session but not saved to a file. If a macro file is loaded, the dialog box displays the filename.

Clicking on the Run button will cause the highlighted macro to be executed, that is, HoTMetaL PRO will carry out the series of operations associated with the macro. You can run only one macro at a time.


Load Macros...

This command presents you with a file chooser dialog box from which you may select a file of macros to be loaded. Macro files are created by recording macros with HoTMetaL PRO and saving them to a file with the Save Macros... command.

After a macro file is loaded, the previously loaded macros are unavailable. If any macros have been defined but not yet saved, these will be lost. Before the new macro file is loaded, you will receive a warning dialog giving you the opportunity to save any unsaved macros.

Macros are not associated with a specific document, so any macros you load will be available for use with all files that you are editing in the current HoTMetaL PRO session.

Macro files are stored as text. They may be opened and edited using HoTMetaL PRO for example, you could combine several special-purpose macro files into a larger file using copy and paste. These macro files may be used by versions of HoTMetaL PRO running on different platforms.


Save Macros...

This command presents you with a file selection dialog box in which you can save the currently loaded macros to a file. A macro file saved in this way may be loaded using the Load Macros... command.

If any macros are still unsaved when you attempt to exit HoTMetaL PRO, you will get a warning message informing you of this and giving you the opportunity to save the macros before exiting.


Edit Macros...

This command gives you a dialog box that lets you change the accelerator for a macro or delete a macro.

If you want to change the accelerator for a macro, click on the macro name in the list of macros. This causes the name and bindings of the macro to appear in the controls at the top of the box.

Once you've done this you can change the accelerator for the macro by means of the Ctrl and Shift check boxes and the Key drop-down list box. Combinations that consist of Ctrl plus a letter are reserved by HoTMetaL PRO and you will not be allowed to use these as macro accelerators.

When you have made the desired changes, click on the Apply button.

To delete a macro from the list of available macros, highlight the macro in the list and click on the Delete button. If you delete a macro that has been loaded from a file, the macro is removed only from HoTMetaL PRO's list of available macros it is not deleted from the file from which it was loaded, and can subsequently be re-loaded. You can delete only one macro at a time.


Record Macro/Stop Recording...

These commands are used to begin and end a macro. The sequence of actions associated with creating a macro is as follows:

1. Click on Record Macro. This starts macro recording. The command will then toggle to Stop Recording....

2. Enter the sequence of actions that you want the macro to carry out. These actions will not only be recorded, they will also be applied to the current document as you're performing them.

3. When you're finished, click on the Stop Recording... command. This command completes macro recording and allows you to select a name and accelerator to associate with the macro (see below).

The progress message area of the main window displays the phrase Recording macro while a macro is being recorded. The usual messages like Opening... will show up when appropriate, but any time the message area would normally be empty, it will instead say Recording macro.

Examples

Restrictions

Stop Recording


Examples

Macros may be associated with text and/or elements to be inserted in a document, a single command, or a complex series of commands. Some actions that you can perform with macros are:

–    Insert an element. If you frequently insert a particular element, you could create a macro which performed that task. In this way you could accomplish in a minimal number of keystrokes a task which normally would require invoking the command, scrolling to the proper position in the element list, and double-clicking with the mouse.

–    Insert a particular character entity.

–    Insert a piece of text that is used repeatedly.

–    Create a keyboard shortcut for a command that doesn't have one built-in (subject to the restriction in the next paragraph).


Restrictions

A macro should be self-contained, that is, its completion must not depend on any user input, such as typing in a text field in a dialog box or making a selection from a list. Consequently, there are some sequences of actions that cannot successfully be associated with a macro. As a general guideline, if a macro involves invoking any of the commands whose name ends in ..., that command should be completed somewhere in the macro. So, for example, you can define a macro that inserts a particular element, but you cannot define a macro that simply brings up the Insert Element dialog box.

An exception to this rule is the action of clicking in an alert box. For example, you may create a macro that invokes the Validate command. When the macro is executed, if there are any warning messages, you will be presented with a caution box, and the validation will continue if you click on the Continue button.

Mouse clicks in content are ignored during macro recording. The first time you attempt to use the mouse to change the selection, HoTMetaL PRO will beep. The second time, you will get a message saying that you should use the cursor (arrow) keys to change the selection.

Spell checking operations should also not be put in a macro.


Stop Recording
Stop Recording...

When you have carried out all the actions you want a macro to contain, click on Stop Recording... to end the macro.

A dialog box will appear, allowing you to select a name and an accelerator for the macro. The macro name is to help you identify the macro in the list in the dialog box that appears when you invoke the Run Macro... command. The accelerator is the sequence of keystrokes that will run the macro.

Choosing an accelerator

An accelerator can consist of any choice from the drop-down list box labelled Key (a letter, number, function key, or arrow key), alone or preceded by Shift, Ctrl, or Alt. Accelerators consisting of Ctrl plus a letter are reserved by HoTMetaL PRO and you may not use these as macro accelerators: the other combinations are valid.

To include Ctrl, Alt, or Shift in the accelerator, click on the appropriate check box.

You will receive a warning if you attempt to use an accelerator that has already been used for another macro.

When you have chosen the name and accelerator, click on the New Macro button.


The Help menu

About HoTMetaL PRO...

Help...

SoftQuad Home Page

Mail to SoftQuad...

Long/Short Menus


About HoTMetaL PRO...

Displays the HoTMetaL PRO copyright notice.


Help...

This command allows you to browse the HoTMetaL PRO manual in Microsoft Help format.


SoftQuad Home Page

This command will invoke Mosaic with the SoftQuad home page.


Mail to SoftQuad...
Mail to SoftQuad

Invoking this command will causes a template, containing an HTML form, to be opened in a browser. From the browser, you can mail this form to html-info@sq.com. The browser used by this command is named by the html_browser configuration variable.  The default browser is c:\mosaic\mosaic.exe.


Long/Short Menus

Clicking on Short Menus converts the HoTMetaL PRO menu bar to the configuration used in the free version of HoTMetaL PRO. This command then toggles to Long Menus. Clicking on Long Menus restores the HoTMetaL PRO menu bar to the normal HoTMetaL PRO configuration.


The Window menu

This menu contains commands for moving between open files and for arranging document windows on the screen.

Next

Previous

Cascade

Tile

Tile vertically

Arrange icons

Filenames in the Windows menu


Next

This command lets you cycle through the open files. HoTMetaL PRO orders the open files according to the time they were opened. When you invoke Next, the file that was opened most recently after the current file, and has not yet been closed, becomes the current file. If the current file is the most recently opened file, then the least recently opened file becomes the current file.

You may also make a file active by clicking on its document window, or by selecting it from the list of open files that appears at the end of the Window menu (see below).


Previous

This command is similar to Next, but it makes the file that was opened most recently before the current file, and has not yet been closed, the current file.


Cascade

This command causes all the document windows (including those for context and structured views) to be cascaded, in the order in which the files were most recently active. That is, the active file is displayed at the front, the file that was next most recently active is displayed behind it, slightly above and to the left, and so forth.


Tile

This command causes all the document windows (including those for context and structured views) to be tiled. That is, the windows will be arranged in a column of non-overlapping, equal-sized windows down the frame. The active document will be on top. If there are more than three open documents, the windows will be arranged in several columns, with the active document at the top left.


Tile vertically

This command is similar to Tile, but causes all the document windows to be arranged in a row of non-overlapping, equal-sized windows across the frame. The active document will be on the left. If there are more than three open documents, the windows will be arranged in columns, with the active document at the top left.


Arrange icons

If some document windows have been iconified, this command will cause the icons to be arranged in a row at the bottom of the frame.


Filenames in the Windows menu

Every open document (including context and structure views) will cause a menu item consisting of the document name to be added to the Windows menu. Selecting the document name will cause that document to become active. Each document name is preceded by a number. This number is the mnemonic for the menu item, that is, typing the number while the Windows menu is open is the same as selecting the menu item.


The configuration mechanism

HoTMetaL PRO's configuration mechanism (sometimes called the sqconfig mechanism) lets you modify HoTMetaL PRO's behavior to suit your needs and those of your site.

There are two types of information in the configuration files. There are variables that control HoTMetaL PRO's behavior, and there are variables that give the location of files or directories.

Configuring HoTMetaL PRO

Control variables

Location variables

Tracing configuration variables


Configuring HoTMetaL PRO

There are many aspects of HoTMetaL PRO's behavior that you can configure to your personal needs or those of your site. For example, you can control default options in the Find and Replace dialog box, set options for the Save command, and specify the locations of various auxiliary files. Configuration is done using a mechanism called the sqconfig mechanism, or just the configuration mechanism. You can run HoTMetaL PRO without any problems using the default configuration, but at some point you may prefer to customize. This will be particularly true if several people will be using HoTMetaL PRO on the same PC.

Configuration files

Configuration variables read on start-up!

A suggestion: base and personal configuration files

Setting parameters in the SQRC file


Configuration files

The default configuration files read by HoTMetaL PRO are the file sqhmpro.ini located in the directory where HoTMetaL PRO is installed and the file sqhmpro.ini in the Microsoft Windows directory (usually c:\windows). These files contain configuration parameters called configuration variables. Variables set in the file in the Windows directory take precedence.

You can specify that different files are read by the configuration mechanism, according to the following procedure:

–    If the HoTMetaL PRO command line contains the option -sqconfig followed by a list of one or more files, these files will be used as the configuration files. To specify the files using the command line, you have to modify the HoTMetaL PRO command line using the Properties... command in the Windows File menu.

•    Click once on the HoTMetaL PRO icon.

•    Invoke the Properties... command.

•    A dialog box will appear. In the Command line text box in this dialog, add the option -sqconfig followed by the filenames. For example:

c:\hotmetal\sqhmpro.exe -sqconfig c:\frances\sqhmpro.ini

You can specify more than one file by separating the files with semi-colons:

  c:\hotmetal\sqhmpro.exe -sqconfig c:\frances\sqhmpro.ini;$SQDIR\sqhmpro.ini

 (This example should be read as one line.) `$SQDIR' means replace this by the value of the SQDIR environment variable (this variable, if it has a value, names the HoTMetaL PRO directory). This setting causes two files to be used: the file c:\frances\sqhmpro.ini, as before, and the file sqhmpro.ini located in the HoTMetaL PRO directory.

the SQDIR (HoTMetaL PRO directory) may also be set on the command line. If so, the expression `$SQDIR' will represent the value from the command line. See the section `Setting the HoTMetaL PRO directory' in the `A guide for the perplexed' chapter for full details.

•    If there is no -sqconfig option in the HoTMetaL PRO command line, but the DOS environment variable SQCONFIG names one or more files, then these will be used as configuration files. Here are examples of specifying configuration files using this method.

set SQCONFIG=c:\frances\sqhmpro.ini

  set SQCONFIG=c:\frances\sqhmpro.ini;$SQDIR\sqhmpro.ini

The format for the value of the SQCONFIG variable is the same as for the value that can come after the -sqconfig command line option, as described above.

Environment variables can be set at the DOS prompt, or if you want them to be set every time the PC is booted, you can put the same settings in the autoexec.bat file.

•    If no configuration files are specified with the -sqconfig option or the SQCONFIG environment variable, HoTMetaL PRO will try to read the default configuration files: sqhmpro.ini in the directory where HoTMetaL PRO is installed and in the Windows directory (usually c:\windows).

If a number of configuration files are specified using the environment variable or the command line, HoTMetaL PRO reads the list of files from right to left, that is, in the reverse of the order in which they are listed. If a particular variable (parameter) has a setting in more than one file, the value in the file that is read last will take precedence. If a variable is defined more than once in the same file, the value which appears last in that file will take precedence over values that appear earlier in the file.

If a variable is not set in any configuration file, but is set in the environment, then the setting from the environment is used. If there is no setting in the configuration files or in the environment, then the built-in default value (if there is one) is used. If there is no default value, the variable is undefined.

In summary, the value of an sqconfig variable is taken from the following sources, in the order given below:

1. The configuration files.

2. The environment.

3. The built-in default.


Configuration variables read on start-up!

Configuration files (and configuration variables in the environment) are read by HoTMetaL PRO on start-up, so the changes you make will take effect the next time you run HoTMetaL PRO they will have no effect on a currently-running HoTMetaL PRO. If you need them to take effect immediately, you will have to exit HoTMetaL PRO and restart it.


A suggestion: base and personal configuration files

The following arrangement is one suggestion about how you can use configuration files. It involves using two files: a base file for variables that don't change very often, and a personal file for variables that change more frequently, are experimental, or are employed by a single user.

Base file

The base file should be used as a system configuration file. It should contain the settings that you want to be used as defaults. A parameter should be changed in this file only if you decide that its default value should change for everyone using HoTMetaL PRO on a specific PC. The file sqhmpro.ini in the HoTMetaL PRO directory should be used for this purpose.

Personal file

The personal configuration file should be used if you need to override some of the settings in the base file without modifying the base file. For example, you may want to make temporary changes to some of the parameters, or to specify parameter values that are used only by you (or another individual user), rather than by everyone who uses HoTMetaL PRO on the computer. If your PC has only a single user, you may choose not to use the personal file at all. Or, you could use it only for making temporary changes to the configuration. The file sqhmpro.ini in the Windows directory should be used for this purpose.


Setting parameters in the SQRC file
Setting parameters in the configuration files

You do not need to change any configuration variables unless you wish to customize the HoTMetaL PRO configuration.

A variable is just a name that is assigned some value. You can change these variables by simply editing the configuration files, as appropriate, and making the desired changes.

Basic format for setting variables

Variables are assigned values by putting lines of the following form in the configuration files:

  variable = value

For example:

  undo_limit=50

undo_limit is a configuration variable that specifies the number of successive commands that can be undone or reversed with HoTMetaL PRO's Undo command. The default built in to HoTMetaL PRO is 10: to raise this to 50, you would set the variable as in the example.

You may put spaces or tabs on either side of the equal sign for readability. Also, if you prefer, you may substitute a colon (:) for the equal sign:

  undo_limit:50

The effect is the same.

You should not have any white space (spaces or tabs) at the end of the line.

If you don't want to set a particular variable, then you can do this by omitting or deleting any settings of that variable in the configuration files. Alternatively, you can comment out settings in these files by inserting the `#' character as the first character on all lines containing such settings: HoTMetaL PRO will ignore such lines.

For example:

  #undo_limit=50

You should not try to give variables a null value, e.g.,

  undo_limit=

Or:

  tag_font_name=""

You should take care to use legal values for all the configuration variables. Otherwise, HoTMetaL PRO may behave in unexpected ways.

Referencing one variable from another

You can use the value of one configuration variable when assigning the value of another variable. For example:

  my_name_is=rodney templates_path= d:\$my_name_is\tmplts

The expression:

  $my_name_is

is equal to the current value of the configuration variable (my_name_is) between the `' and `'. So this expression is equal to `rodney'. When HoTMetaL PRO evaluates templates_path in the last example, it substitutes `rodney' for `$my_name_is', so that the value of templates_path becomes `d:\rodney\tmplts'. HoTMetaL PRO performs this substitution when it uses the variable, not when it reads the configuration files at start-up.

You can use the same notation to cause HoTMetaL PRO to read a DOS environment variable. For example, you could set an environment variable (at the DOS prompt or in the autoexec.bat file):

  set MY_NAME=rodney

A configuration file could have the following setting:

  templates_path= d:\$MY_NAME\tmplts

When templates_path is evaluated, `rodney' is substituted for `$MY_NAME', so that the value of templates_path becomes `d:\rodney\tmplts'. As before, this substitution occurs when the variable is used by HoTMetaL PRO, not at start-up.

The `$' symbol is used as a special character in configuration variables, so if you want to put a `$' in the value of an variable, you have to represent it with `$$'.

Appending and prepending to a variable

If a configuration variable has already been assigned a value, you may wish to append or prepend some characters to it. For example:

  templates_path=c:\hotmetal\tmplts; templates_path += d:\jennifer\tmplts;

  styles_path=c:\hotmetal\styles; styles_path =+ d:\jennifer\styles;

In the first example, the variable templates_path is first given the value `c:\hotmetal\tmplts;'. The `+=' in the expression

  templates_path += d:\jennifer\tmplts;

causes `d:\jennifer\tmplts;' to be prepended to the current value of templates_path. The value of templates_path becomes `d:\jennifer\templates;c:\hotmetal\templates;'.

In the second example, the variable styles_path is first given the value `c:\hotmetal\styles;'. The `=+' in the expression

  styles_path =+ d:\jennifer\styles;

causes `d:\jennifer\styles;' to be appended to the current value of styles_path. The value of styles_path becomes `c:\hotmetal\styles;d:\jennifer\styles;'.

(In these examples, the semi-colon, `;', between the file names, is not inserted automatically by HoTMetaL PRO.)

If a variable does not already have a value, then assigning it a value using `=+' or `+=' has the same effect as just assigning a value using `='. For example, if templates_path does not currently have a value, then

  templates_path+=c:\tmplts;

has the same effect as

  templates_path=c:\tmplts;


Control variables

These variables control various aspects of HoTMetaL PRO's behavior: save options, find and replace options, etc. Many of these variables take values of YES or NO; please note that YES, true, and 1 (one) are synonymous here, as are NO, false, and 0 (zero).

Save options

Find options

Markup options

Display variables

Other options


Save options

The following variables allow you to choose default save options for the Save and Save As...commands.

export_doc_type_dec

By default, HoTMetaL PRO will save the document type declaration ( DOCTYPE) when it saves a file. If this variable is set to NO, then HoTMetaL PRO will not include the DOCTYPE with an exported file. If it is set to YES, or if it is not set at all, then the DOCTYPE will be saved with the file.

export_sgml_dec

By default, HoTMetaL PRO will not export the SGML declaration when it exports a file. If this variable is set to YES, then the SGML declaration will be exported. If it is set to NO or omitted, then the SGML declaration is not exported.

export_add_line_breaks

By default, HoTMetaL PRO will not impose any limit on the length of a line in an saved file, i.e., it will not add any explicit line breaks. If this variable is set to YES, HoTMetaL PRO will add line breaks after the number of characters specified with the export_max_line_len variable (see below). If export_add_line_breaks is set to NO or omitted, no line breaks will be added.

export_max_line_len

If export_add_line_breaks is set to YES, lines will be broken after a certain number of characters. You can set this number with the variable export_max_line_len or in the dialog box, e.g.,

  export_max_line_len=60

If this variable is not set, the default is 80 characters.

export_convert_special_chars

If this variable is set to YES, then HoTMetaL PRO will convert any special characters inserted directly in your document to SGML character references. (Special characters are those outside the ASCII range 0-127). This will apply only to special characters that were inserted if the file was modified or created by another editing package: special characters that are inserted using HoTMetaL PRO are immediately converted into character entity icons. Character references are supported by browsers such as Mosaic. If the variable is omitted or set to NO, then special characters are not converted.

export_eol

This variable lets you choose the end-of-line marker that will be generated in your saved file. There are three choices: UNIX, which causes the end-of-line marker to be a line feed, MSDOS, which causes it to be a carriage return followed by a line feed, and MAC, which sets the marker to be a carriage return. The default value for this variable is MSDOS.


Find options

The next group of variables allow you to control the behavior of the commands in HoTMetaL PRO's Find menu. You may override all these settings from the dialog box that accompanies the Find and Replace... command.

find_whole_words

By default, the Whole Words option is turned off in the Find & Replace dialog box. If this variable is set to YES, this option is turned on; if it is set to NO or undefined, Whole Words is turned off in the dialog box.

find_case_sensitive

By default, the Case Sensitive option is turned off in the Find & Replace dialog box. If this variable is set to YES this option is turned on; if it is set to NO, or undefined, Case Sensitive is turned off in the dialog box.

find_backward

By default, the Backwards Search option is turned off in the Find & Replace dialog box. If this variable is set to YES, this option is turned on; if it is set to NO, or undefined, Backwards Search is turned off in the dialog box.

find_wrap

By default, the Wrap option, which causes searches to encompass the entire file, starting at the current position, is turned on in the Find & Replace dialog box. If this variable is set to NO, Wrap will be turned off. If the variable is set to YES or not defined, wrapping will be turned on.

find_patterns

By default, the Find Patterns option is turned off in the Find & Replace dialog box. If this variable is set to YES, Find Patterns is turned on. If it is set to NO, or not defined, the Find Patterns option is turned off.


Markup options

These variables govern aspects of the markup process.

include_required_elements

This variable controls whether the Include Required Elements option is turned on for the Insert Element...command. If this variable is set to NO, the option will be turned off. If the variable is set to YES or undefined, the option will be on. For more information, see the section on Insert Element... in the Markup menu chapter.

prompt_for_attrs

This variable controls whether the Edit Attributes and Links dialog box will be displayed each time an element with attributes is inserted in the document. If it is set to NO, or undefined, then users will be prompted with this dialog only if the element being inserted has required attributes. If the variable is set to YES, then the user will be prompted every time an element with attributes is inserted.


Display variables

The variables in this section pertain to HoTMetaL PRO's screen display: invisible characters, fonts for icons, and colors.

default_font_name

This variable lets you choose the default font family for all documents opened with HoTMetaL PRO. The value of this variable should be a font name, exactly as it appears in the Font Family drop-down list box. For example:

  default_font_name=Times New Roman

The default font family is Helvetica.

default_font_size

This variable lets you choose the default font size for all documents opened with HoTMetaL PRO. The value of this variable should be a positive number. For example:

  default_font_size=14

The default font size is 12 points.

tag_font_name

This variable lets you choose the font used to display the element names in the tag icons in an HoTMetaL PRO document. The list of available fonts is dependent on your system and on the font source file that you are using. The best way to find out which fonts you can use is to invoke HoTMetaL PRO's Character... command and click on the arrow next to the drop-down list box labeled Font Family. The menu that appears contains the names of the available fonts. The value assigned to the tag_font_name variable should be the font name, not surrounded by quotes, exactly as it appears in the Font Family menu. The default font is Helvetica.

tag_font_size

This variable lets you choose the font size used to display the element names in the tag icons in an HoTMetaL PRO document. The list of available font sizes is dependent on your system and on the font source file that you are using. The best way to find out which font sizes you can use is to invoke HoTMetaL PRO's Character... command and click on the arrow next to the drop-down list box labeled Font Size. The menu that appears contains the available font sizes. The value assigned to the tag_font_size variable should be the font size in points, not surrounded by quotes. The default is 12 points.

entity_font_name

This variable lets you choose the font used to display the entity names in the character entity icons in an HoTMetaL PRO document. This variable has the same possible values, default, and is set in the same way as, tag_font_name, described above.

entity_font_size

This variable lets you choose the font size used to display the character entity names in the entity icons in an HoTMetaL PRO document. This variable has the same possible values, default, and is set in the same way as, tag_font_size, described above.


Other options

html_browser

This variable gives a command line for an HTML browser that is invoked by HoTMetaL PRO's Preview command. The default value is c:\mosaic\mosaic.exe.

publish_change_from

This variable specifies the text that appears in the Change From text entry box in the Publish... command's dialog box. The default value is `file://'.

publish_change_to

This variable specifies the text that appears in the Change To text entry box in the Publish... command's dialog box. The default value is `http://'.

spell_checking_language

This variable lets you set the default language used in spell checking, i.e., it determines which system dictionary is used. The languages normally available are American English and British English. The possible values for this variable are AMERICAN and BRITISH. These settings are not case sensitive. The default value is AMERICAN.

show_inline_images

If this variable is set to TRUE, then any GIF images referred to by URLs in IMG or LINK elements will be displayed inline (in the HoTMetaL PRO document window) when a file is opened. Otherwise (if the variable is set to FALSE or not set) such images are hidden. You can override the show_inline_images setting using the Show/Hide Inline Images command. This command toggles to Hide Inline Images by default if the variable is set to TRUE, and to Show Inline Images otherwise.

undo_limit

This variable sets the maximum number of commands that can be undone with the Undo command. By default, this value is 10. The maximum value is 65535. The minimum value is one; if you set it to a value less than one, it will be set to one anyway.

view_gif

This variable specifies a program that the Show Image command will invoke to display a file whose name ends with the .gif file extension (normally this file would be expected to be in GIF format).

You can add variables of your choice of the form view_extension, where extension is the file extension of the file you want to display: for example, you could have view_tif, view_jpg, etc., variables.


Location variables

The variables described below give the locations of directories or files that are used by HoTMetaL PRO, and specify default file extensions.

Paths and

Files

File extensions


Paths and
Paths and directories

Paths are lists of directories that HoTMetaL PRO searches to find files it needs to read, or uses to store files. The value of a variable that describes a path consists of a number of directory names, or paths, separated by semi-colons `;'. As well as giving specific directory names, it is possible to specify HoTMetaL PRO's working directory by putting a period, `.', in the path.

The working directory is set with the `Properties...' command in the Microsoft Windows `File' menu. When giving a directory name (other than the working directory), you need to give the full DOS path. This may be fully or partly represented by a reference to another configuration or environment variable, as explained earlier in this chapter.

The following example shows how to set a path variable, in this case, export_path:

  export_path=$SQDIR\samples:.:c:\donald\samples

This setting is interpreted as follows:

–    The expression `$SQDIR' is replaced by the name of the HoTMetaL PRO directory, so the expression `$SQDIR\styles' will cause a directory such as c:\hotmetal\styles to go into the path.

–    The current working directory when the program was invoked, signified by ., is included in the path.

–    Lastly, the directory c:\donald\samples is specified explicitly.

The default value for all path variables, with the exception of templates_path, is ..

ascii_styles_path

This variable gives a default directory for storing and loading  styles files in text form. When you invoke the Save ASCII Styles... or Load Styles... command in the View menu, the file selection dialog box that appears has a list labeled Directories. This list displays, by default, the directory that is named first with the ascii_styles_path variable.

import_path

This variable gives a default directory for opening files. In the file selection dialog box that appears when you invoke the Open...command, the Directories list box displays, by default, the directory that is listed first with the import_path variable.

export_path

This variable names the default directory for saving files. When you invoke the Export... command, the default directory that appears in the Directories list box is the first directory that is listed on the export_path variable.

import_path

This variable gives a default directory for opening files. In the file selection dialog box that appears when you invoke the Open...command, the Directories list box displays, by default, the directory that is listed first with the import_path variable.

save_path

This variable gives a default directory for saving new files. In the file selection dialog box that appears when you invoke the Save As... command, the Directories list box displays, by default, the directory that is listed first on the save_path variable. By default, this variable has the same value as document_path.

styles_path

This variable describes the styles path, a list of directories where styles files are located. These are files used by HoTMetaL PRO to describe the formatting for a document when it is displayed on the screen. HoTMetaL PRO will create a styles file for a rules file the first time that rules file is used. It places the styles file in the first directory listed by the styles_path variable. On subsequent uses of the rules file, HoTMetaL PRO will look for the styles file in the directories named by the variable. If the rules file has been changed since the styles file was created, HoTMetaL PRO will ask you if you want to create a new styles file.

The format of this variable is the same as for export_path, above.

If more than one user will be running HoTMetaL PRO on the same computer, it is recommended that each user have his or her own styles files, because screen formatting is frequently a matter of personal preference. The best way to do this is for each user to maintain a personal configuration file (see above) and put a styles_path variable in that file).

supp_dict_path

This variable gives a list of directories that HoTMetaL PRO will search through when it needs to find a supplementary dictionary file for use with the Check Spelling...command. The order in which the directories appear is significant: when looking for a supplementary dictionary file, HoTMetaL PRO searches the directories in the order in which they appear on the supp_dict_path variable. It stops looking as soon as it finds a file with the right name. The supplementary dictionary files are listed with the supp_dict variable.

system_dict_path

This variable gives a list of directories that HoTMetaL PRO will search through when it needs to find a system dictionary file for use with the Check Spelling...command. The order in which the directories appear is significant: when looking for a dictionary file, HoTMetaL PRO searches the directories in the order in which they appear on the system_dict_path variable. It stops looking as soon as it finds a file with the right name. The choice of system dictionary depends on the spell checking language that you have chosen with the spell_checking_language variable.

templates_path

This variable gives the directory for storing files that can be used as document templates with the Open Template...command.

user_dict_path

This variable gives a list of directories that HoTMetaL PRO will search through when it needs to find a user dictionary file for use with the Check Spelling...command. The order in which the directories appear is significant: when looking for a user dictionary file, HoTMetaL PRO searches the directories in the order in which they appear on the user_dict_path variable. It stops looking as soon as it finds a file with the right name. The user dictionary file is named with the user_dict variable.


Files

These variables give the names of specific files that HoTMetaL PRO uses.

Except as noted, when giving a file name you need to give the full DOS path. This may be fully or partly represented by a reference to another configuration or environment variable, as explained above.

filter_list

This variable names a file that contains a list of commands (separated by newlines) that are available by default to the Import Through Filter... command.

rgb_txt

This variable names the color map file, a file that associates color names with the red-green-blue values required to tell HoTMetaL PRO how to produce the colors. The value of this variable should be a file name. If an absolute path is prepended to the file name, then that file is used; if the file name has a relative path, or no path, prepended to it, then HoTMetaL PRO looks for a file relative to the SQDIR directory. The default value is $SQDIR\rgb.txt.

supp_dict

This variable gives the names of the supplementary dictionary file(s) used with the Check Spelling... and Check Spelling in Selection... commands. See the documentation on these two commands for more information on supplementary dictionaries. The variable can name up to 24 such files. The value of this variable is a list of file names (without paths) separated by colons, e.g.:

  supp_dict=med.dct:law.dct:bridge.dct:birds.dct

url_protocols_file

This variable names a file that contains a list of protocols (and their associated templates) for URLs, used by the Edit URL... command. Each line in this file can contain a protocol and a template, separated by a colon. The protocol is a string of characters, e.g., `gopher'. The template consists of literal characters, intermixed with any of the strings `<name>' (representing a filename or user name), `<host>' (representing a server name or mail domain name), and `<port>' (representing a port).

For example:

  http://<host>/<name>

`http' is the protocol name, and `//<host>/<name>' is the template.

user_dict

This variable gives the name of the user dictionary file, which is used with the Check Spelling...command. See the documentation on this command for more information on the user dictionary.


File extensions

These configuration variables determine the default file extensions that appear in the file selection dialog boxes for different kinds of files. The file extensions appear in the Filename text box. The file extension consists of a dot followed by a sequence of characters (usually three). When you set a file extension, you must include the dot in the corresponding variable's value. E.g.,

  dictionary_ext=.dct

ascii_styles_ext

This variable sets the default extension for styles files in text format. The default extension is .asf. The text box labeled File Name in the Save Styles and Load Styles dialog boxes will, by default, contain the *.asf pattern, causing the Files list in the dialog box to contain all files having that extension in the currently selected directory.

dictionary_ext

This variable sets the default extension for user dictionary files. The default extension is .dct. The text box labeled File Name in the Load Dictionary dialog box will, by default, contain the *.dct pattern, causing the Files list in the dialog box to contain all files having that extension in the currently selected directory.

macros_ext

This variable sets the default extension for macro dictionary files. The default extension is .mcr. The text box labeled File Name in the Load Macros dialog box will, by default, contain the *.mcr pattern, causing the Files list in the dialog box to contain all files having that extension in the currently selected directory.

styles_ext

This variable sets the default extension for binary styles files. When you create or open an HoTMetaL PRO file, HoTMetaL PRO will look in the styles path for a styles file that has the same name as the rules file's compiled-in system identifier, but with the file extension replaced by the styles extension. The default styles extension is .stl.


Tracing configuration variables

HoTMetaL PRO allows you to trace exactly how the configuration settings are used. When tracing is turned on, you will be presented with a warning box when HoTMetaL PRO reads the configuration files, or accesses any of the variables. Tracing is controlled by the SQTRACE environment variable. The possible values are ON (which is the same as true and 1), OFF(which is the same as false and 0) and FULL. The variable must be set before starting up HoTMetaL PRO.

If SQTRACE has the value ON, you are notified whenever any of the following things happen:

–    HoTMetaL PRO reads the configuration files.

–    the final value (i.e., after all configuration files have been read) of a variable is set. Furthermore, you will be told which of the files the value comes from.

–    HoTMetaL PRO looks for the value of a variable but does not find it in any configuration file.

–    a duplicated variable is detected. If a variable is set in more than one configuration file, or more than once in the same file, you will be notified, and given the previous and new values and which files these values came from.

–    an absolute file name or path name is encountered as the value of a variable.

If SQTRACE has the value OFF, or is not set, tracing will not be invoked.


Appendix 1: Keyboard shortcuts

This appendix discusses the keyboard shortcuts for invoking HoTMetaL PRO commands and performing other windowing operations.

Shortcuts

Mnemonics


Shortcuts

Many of the shortcuts for invoking commands involve two keys: the Ctrl key and another key specific to the command.

To invoke the Open... command, for example, hold down the Ctrl key, and then press the O key while the other key is held down. This series of keystrokes is denoted Ctrl-O. In the menu, it is denoted `^O'. Other shortcuts consist of a function key, and some commands have two different shortcuts. Note that some older keyboards may not have the F11 and F12 keys.


Mnemonics

Like other Windows applications, HoTMetaL PRO supports the use of mnemonics for accessing menus and commands from the keyboard. A mnemonic is a letter that is associated with a menu bar menu, command, and sometimes with a dialog box control. Usually the mnemonic will be the first letter of the menu or command name, but in cases where more than one menu, or more than one command within the same menu, starts with the same letter, the mnemonic will be a subsequent letter in the name. Since the mnemonic is always underlined, you can easily tell what it is.

You can bring down a menu at any time by pressing the Alt key, and then, while Alt is still depressed, pressing the key with the mnemonic letter. If a menu is visible, you can invoke a command from that menu just by pressing the key with the mnemonic letter. Some controls in file selection dialog boxes are associated with mnemonics. When the dialog box is active, press Alt plus the mnemonic to activate the control.


Appendix 2: SGML Conformance

HoTMetaL PRO is an SGML Application Conforming to International Standard ISO 8879 Standard Generalized Markup Language.

System declaration

SGML declaration


System declaration

HoTMetaL PRO conforms to the following system declaration (see clause 15.6 of ISO 8879):

<!SYSTEM "ISO 8879:1986"

CHARSET

BASESET "ISO 646-1983//CHARSET International

Reference Version (IRV)

         //ESC 2/5 4/0"

DESCSET

0	9	UNUSED

9	2	9

11	2	UNUSED

13	1	13

14	18	UNUSED

32	95	32

127	1	UNUSED

BASESET "ISO Registration Number 109//CHARSET

ECMA-94 Right Part of Latin Alphabet Nr. 3//ESC 2/13 4/3"

DESCSET

128	32	UNUSED

160	5	32

165	89	32

254	1	127

255	1	UNUSED

CAPACITY PUBLIC

"ISO 8879:1986//CAPACITY Reference//EN"

FEATURES

MINIMIZE

DATATAG  	NO

OMITTAG	YES

RANK	NO

SHORTTAG	YES

LINK

SIMPLE  	NO

IMPLICIT	NO

EXPLICIT	NO

OTHER

CONCUR	NO

SUBDOC	NO

FORMAL	YES

SCOPE DOCUMENT

SYNTAX PUBLIC

"ISO 8879:1986//SYNTAX Core//EN"

VALIDATE

GENERAL	YES

MODEL	YES

EXCLUDE	NO

CAPACITY	NO

NONSGML	NO

SGML	YES

FORMAL	YES

SDIF	NO

PACK	NO

>


SGML declaration

Files created and edited with HoTMetaL PRO conform to the following SGML declaration. You may obtain an electronic copy of this declaration by setting the export_sgml_dec configuration variable to TRUE and then saving any document. The SGML declaration will appear at the top of the saved text file.

<!SGML  "ISO 8879:1986"

CHARSET

BASESET  "ISO 646:1983//CHARSET

International Reference Version (IRV)//ESC 2/5 4/0"

DESCSET  0	9	UNUSED

9	2	9

11  2	UNUSED

13  1	13

14  18  UNUSED

32  95  32

127 1	UNUSED

BASESET	"ISO Registration Number 100//CHARSET

ECMA-94 Right Part of Latin Alphabet Nr. 1//ESC 2/13 4/1"

DESCSET	128 32 UNUSED

60 95 32

255  1 UNUSED

CAPACITY	SGMLREF

TOTALCAP	 150000

GRPCAP	150000

SCOPE	 DOCUMENT

SYNTAX

SHUNCHAR CONTROLS 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

19 20 21 22 23 24 25 26 27 28 29 30 31 127 255

BASESET  "ISO 646:1983//CHARSET

  International Reference Version (IRV)//ESC 2/5 4/0"

DESCSET  0 128 0

.bp

FUNCTION	RE	13

RS	10

SPACE	32

TAB SEPCHAR	9

NAMING	LCNMSTRT ""

UCNMSTRT ""

LCNMCHAR ".-"

UCNMCHAR ".-"

NAMECASE	GENERAL YES

ENTITY  NO

DELIM	GENERAL  SGMLREF

SHORTREF SGMLREF

NAMES	 SGMLREF

QUANTITY SGMLREF

NAMELEN  34

TAGLVL	100

LITLEN	1024

GRPGTCNT 150

GRPCNT	64

FEATURES

MINIMIZE

DATATAG  NO

OMITTAG  YES

RANK	  NO

SHORTTAG YES

LINK

SIMPLE	NO

IMPLICIT NO

EXPLICIT NO

OTHER

CONCUR	NO

SUBDOC	NO

FORMAL	NO

APPINFO	 NONE

>